[ 
https://issues.apache.org/jira/browse/CXF-2682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Kulp resolved CXF-2682.
------------------------------

    Fix Version/s: Invalid
       Resolution: Cannot Reproduce



Marking resolved as non reproducible as it's not reproducible with 2.2.x and we 
no longer support 2.1.x.


> 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
>             Fix For: Invalid
>
>
> 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.

Reply via email to