You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2010/03/09 04:55:27 UTC

[jira] Commented: (CXF-2682) Error "SOAPFaultException: Fault string, and possibly fault code, not set" in stress test.

    [ https://issues.apache.org/jira/browse/CXF-2682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12842902#action_12842902 ] 

Daniel Kulp commented on CXF-2682:
----------------------------------


Is this at all reproducible with something newer than 2.1.5?    Can you test with 2.2.6 or even the 2.2.7-SNAPSHOT?

> Error "SOAPFaultException: Fault string, and possibly fault code, not set"  in stress test.
> -------------------------------------------------------------------------------------------
>
>                 Key: CXF-2682
>                 URL: https://issues.apache.org/jira/browse/CXF-2682
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.1.5
>            Reporter: carles rico
>            Priority: Critical
>
> I'm stressing an aplication that use CXF as client webservice.
> When I have about 100 concurrent threads, I can see int the log the next message. All threads don't crash.
> {noformat}
> Caused by: javax.xml.ws.soap.SOAPFaultException: Fault string, and possibly fault code, not set
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:145)
> 	at $Proxy167.renderitzarFormulariXDP(Unknown Source)
> 	at net.gencat.sit.traint.adapter.ServeiFormularisAdapter.renderitzarFormulari(ServeiFormularisAdapter.java:229)
> 	... 117 more
> Caused by: java.lang.ArrayIndexOutOfBoundsException
> {noformat}
> The main invocation code in ServeiFormularisAdapter is:
> {code:title=ServeiFormularisAdapter.java|borderStyle=solid}
>          private JaxWsProxyFactoryBean factory;
>  
> 	private ServeisAdobePortType obtenirServeisAdobe() {
> 		
> 		if (log.isDebugEnabled()) { 
> 			log.debug("-> obtenirServeisAdobe(urlSF:"+urlSF+")");
> 		}
> 			
>                if (factory==null) {
> 		   factory = new JaxWsProxyFactoryBean();
> 		   factory.getInInterceptors().add(new LoggingInInterceptor());
> 		   factory.getOutInterceptors().add(new LoggingOutInterceptor());
> 		   factory.setServiceClass(ServeisAdobePortType.class);
> 		   factory.setAddress(urlSF);
> 		}
> 		ServeisAdobePortType client = (ServeisAdobePortType) factory.create();
> 		
> 		if (log.isDebugEnabled()) {
> 			log.debug("<- obtenirServeisAdobe():"+client);
> 		}
> 		return client;
> 	}
> 	public byte[] renderitzarFormulari(String xml, InvocacioFormulari invocacioFormulari, String format) throws ServeiFormularisSystemException {
>                         Result result;
>        			try {
>                            ServeisAdobePortType client = obtenirServeisAdobe();
> 		
> 			   result = client.renderitzarFormulariXDP(invocacioFormulari.getAmbit(),
> 						 invocacioFormulari.getAplicacio(),
> 						 invocacioFormulari.getNomFormulari(),
> 						 xml.getBytes("UTF-8"),
> 						 format);
>                        }
>                       catch(Throwable ex) {
>                                 log.error("Error",ex);
>                                 throw new ServeiFormularisSystemException(ex);
>                      }
>                       return result;
>        }	
> {code} 
> factory is a singleton and all threads use this instance without sinchronize. Its a problem ?
> I think, the real exception is the java.lang.ArrayIndexOutOfBoundsException but I can't see the stacktrace.
> Could you help me?
> Thank's,
> Best regards,
> Carles.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.