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

Alexey Ousov updated ODE-231:
-----------------------------

    Attachment: ODE231_jpa_epr_fix.patch

The following patch is suggested to fix issue

> org.xml.sax.SAXParseException: Premature end of file when invoking external 
> service (TCP)
> -----------------------------------------------------------------------------------------
>
>                 Key: ODE-231
>                 URL: https://issues.apache.org/jira/browse/ODE-231
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.1.1
>         Environment: Windows XP Pro, JDK 1.5.0.07, Oracle 10g XE, Apache 
> Tomcat 5.5.25, OpenJPA
>            Reporter: Alexey Ousov
>         Attachments: ODE231_jpa_epr_fix.patch
>
>
> When invoking external service via TCP using OpenJPA the following error is 
> generated:
> DEBUG - LoggingErrorHandler.fatalError(89) | :-1:-1:FATAL:Premature end of 
> file.
> ERROR - ODEService.onAxisMessageExchange(179) | Error processing response for 
> MEX {MyRoleMex#hqejbhcnphr2wshoxjstwx [Client hqejbhcnphr2wshoxjstww] calling 
> {http://www.example.org/registerUser}registerUser.registerUser(...)}
> java.lang.RuntimeException: org.xml.sax.SAXParseException: Premature end of 
> file.
>       at 
> org.apache.ode.dao.jpa.MessageExchangeDAOImpl.getEPR(MessageExchangeDAOImpl.java:152)
>       at 
> org.apache.ode.bpel.engine.MessageExchangeImpl.getEndpointReference(MessageExchangeImpl.java:199)
>       at org.apache.ode.axis2.ODEService.writeHeader(ODEService.java:271)
>       at org.apache.ode.axis2.ODEService.onResponse(ODEService.java:229)
>       at 
> org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:172)
>       at 
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:69)
>       at 
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:50)
>       at 
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:96)
>       at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)
>       at 
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>       at 
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
>       at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>       at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>       at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>       at java.lang.Thread.run(Thread.java:595)
> Caused by: org.xml.sax.SAXParseException: Premature end of file.
>       at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
>       at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
>       at org.apache.ode.utils.DOMUtils.parse(DOMUtils.java:622)
>       at org.apache.ode.utils.DOMUtils.stringToDOM(DOMUtils.java:548)
>       at 
> org.apache.ode.dao.jpa.MessageExchangeDAOImpl.getEPR(MessageExchangeDAOImpl.java:150)
>       ... 26 more
> Actually there are 3 places where this error is generated: 
> org.apache.ode.dao.jpa.MessageExchangeDAOImpl.getEPR, 
> PartnerLinkDAOImpl.getPartnerEPR and possibly (not tested) 
> PartnerLinkDAOImpl.getMyEPR(). The cause is: variable which holds xml 
> representation of EPR is not null, but empty string (""). It seems that 
> OpenJPA in conjunction with Oracle uses empty string when restoring these 
> values from database.

-- 
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