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.