Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 314668

Summary: Runtime doesn't support endpoints not finishing with "/"
Product: z_Archived Reporter: Andrei Shakirin <andrei.shakirin>
Component: SwordfishAssignee: Swordfish Core Inbox <swordfish.core-inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3 CC: jkindler
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
WSDL to reproduce the problem none

Description Andrei Shakirin CLA 2010-05-27 10:04:26 EDT
Created attachment 170183 [details]
WSDL to reproduce the problem

Hi,

Test case: WSDL has endpoint not finishes with "/": "http://localhost:8197/FlightReservationService".

Problem: consumer has following exception on the runtime:
SCHWERWIEGEND: Error processing exchange org.apache.servicemix.jbi.runtime.impl.InOutImpl@76ec2d
com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
	at com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:686)
	at com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2134)
	at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2040)
	at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069)
	at javax.xml.stream.util.StreamReaderDelegate.next(StreamReaderDelegate.java:59)
	at org.apache.servicemix.jbi.jaxp.ExtendedXMLStreamReader.next(ExtendedXMLStreamReader.java:58)
	at org.apache.servicemix.jbi.jaxp.ExtendedXMLStreamReader.nextTag(ExtendedXMLStreamReader.java:41)
	at org.apache.servicemix.soap.marshalers.SoapReader.readSoapUsingStax(SoapReader.java:164)
	at org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:89)
	at org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:76)
	at org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:165)
	at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:368)
	at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
	at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:581)
	at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:478)
	at org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:347)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)


WSDL file to reproduce the problem is attached.

regards,
Andrei.
Comment 1 Juergen Kindler CLA 2010-07-30 02:52:57 EDT
This is a known issue connected with Jetty & ServiceMix/CXF and also documented in the Eclipse Help of Swordfish.

Jetty will send a redirect HTTP state 302 (temporarily moved) when an URL does not point to a file. Obviously the ServiceMix/CXF are not handling this by resending the request to the redirection URL (original url + "/").