Hi all,
I have found it.

I assigned wsdl document to this service and
in WSDLServiceConfigurator is changed message style to wrapped
and in AbstractSoapBinding in AbstractBinding getSerializer(String
style, String use)

is created WrappedBinding object instead of MessageBinding.

Is this bug or it is feature?

I will need assign wsdl document to this service. It will have generated schema.

Regards,
Zdenek Vrablik

On 8/15/07, Zdeněk Vráblík <[EMAIL PROTECTED]> wrote:
> Hi all,
>
> I use XFire 1.2.5 with Message Binding.
>
> When I call this message:
>
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:wfst="http://www.geospatial.com/wfs";>
>    <soapenv:Header/>
>    <soapenv:Body>
>       <wfst:invoke>
>         <somethingRoot>
>           <something/>
>         </somethingRoot>
>       </wfst:invoke>
>    </soapenv:Body>
> </soapenv:Envelope>
>
> I get this error:
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Received message
> to /icingWFSTSOAP/services/WfstService
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to phase
> dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to phase
> parse
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to phase
> pre-invoke
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to phase
> dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to phase
> dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to phase
> dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to
> phase service
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to
> phase service
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking phase transport
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking phase parse
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking handler
> org.codehaus.xfire.soap.handler.ReadHeadersHandler in phase parse
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking phase
> pre-dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking phase dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking handler
> org.codehaus.xfire.handler.LocateBindingHandler in phase dispatch
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] Invoking handler
> org.codehaus.xfire.soap.handler.SoapBodyHandler in phase dispatch
> ERROR [http-8080-Processor25]  [15-Aug-2007 15:37:01] Fault occurred!
> java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
>         at java.util.LinkedList.entry(LinkedList.java:368)
>         at java.util.LinkedList.get(LinkedList.java:313)
>         at java.util.Collections$UnmodifiableList.get(Collections.java:1155)
>         at 
> org.codehaus.xfire.service.binding.AbstractBinding.read(AbstractBinding.java:191)
>         at 
> org.codehaus.xfire.service.binding.WrappedBinding.readMessage(WrappedBinding.java:50)
>         at 
> org.codehaus.xfire.soap.handler.SoapBodyHandler.invoke(SoapBodyHandler.java:42)
>         at 
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
>         at 
> org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
>         at 
> org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
>         at 
> org.codehaus.xfire.transport.http.XFireServletController.invoke(XFireServletController.java:304)
>         at 
> org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:129)
>         at 
> org.codehaus.xfire.transport.http.XFireServlet.doPost(XFireServlet.java:116)
>         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:210)
>         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:870)
>         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:685)
>         at java.lang.Thread.run(Thread.java:595)
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED] to
> phase post-invoke
> DEBUG [http-8080-Processor25]  [15-Aug-2007 15:37:01] adding handler
> [EMAIL PROTECTED]
> to phase trans
>
>
> This error was logged in http://jira.codehaus.org/browse/XFIRE-233.
> The suggested workaround in XFIRE-233 dosn't work.
> xfire.messageServiceFactory is defined in xfire.xml file along this
> workaround.
>
> my service.xml file:
> <beans xmlns="http://xfire.codehaus.org/config/1.0";>
>
>     <bean id="WfstService" class="com.WfstSoapServiceImpl"/>
>
>         <service >
>                 <name>WfstService</name>
>                 <namespace>http://www.geospatial.com/wfs</namespace>
>                 <serviceBean>#WfstService</serviceBean>
>                 <serviceFactory>#xfire.messageServiceFactory</serviceFactory>
>                 <style>message</style>
>                 <wsdlURL>META-INF/wsdl/WFST.wsdl</wsdlURL>
>                 <use>literal</use>
>         </service>
> </beans>
>
> Service interface:
> public interface WfstSoapService
>   {
>   public XMLStreamReader invoke(XMLStreamReader reader);
>   }
>
> Service implementation:
> public class WfstSoapServiceImpl implements WfstSoapService
>   {
>   public XMLStreamReader invoke(XMLStreamReader reader) {
>
>   XMLStreamReader response = null;
>   System.out.println("Test WFS SOAP");
>   return reader;
> }
>   }
>
> Did I omit any configuration?
>
> Thanks.
> Zdenek Vrablik
>

Reply via email to