You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "David McWhorter (JIRA)" <ji...@apache.org> on 2008/07/14 17:36:32 UTC

[jira] Commented: (ODE-155) Examples: Exceptions for SOAP calls after retrieving WSDL

    [ https://issues.apache.org/jira/browse/ODE-155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12613348#action_12613348 ] 

David McWhorter commented on ODE-155:
-------------------------------------

Are there any known workarounds for this problem?  Or is ODE just unusable with Serivcemix til it is fixed?

Thanks,
David

> Examples: Exceptions for SOAP calls after retrieving WSDL
> ---------------------------------------------------------
>
>                 Key: ODE-155
>                 URL: https://issues.apache.org/jira/browse/ODE-155
>             Project: ODE
>          Issue Type: Bug
>          Components: Examples, JBI Integration
>    Affects Versions: 1.0-incubating, 1.1, 1.1.1
>         Environment: Kubuntu 7.04 & 7.10; Service Mix 3.1, 3.1.1 & 3.2.1; ODE 1.0, 1.1, 1.1.1
>            Reporter: Falko Menge
>            Assignee: Guillaume Nodet
>            Priority: Critical
>             Fix For: 1.3
>
>
> I deployed the examples HelloWorld2 and PingPong as JBI service assemblies into ServiceMix. Testing with `ant test' works fine untill I request the WSDL from ServiceMix.
> Obtaining WSDL via http://localhost:8080/hello-doc/?wsdl throws no errors in the ServiceMix logfile.
> But subsequent SOAP calls result in a stack trace (see below) and ServiceMix has to be restarted in order to accept new messages.
> I don't think that this Issue is directly related to https://issues.apache.org/jira/browse/ODE-43 since in the issue described here the WSDL is provided, but accessing it results in a denial of service.
> From ServiceMix logfile:
> 11:41:30,769 | DEBUG | btpool0-0 - Acceptor0 SelectChannelConnector @ localhost:8080 | JettyContextManager      | ntextManager$ThreadPoolWrapper  437 | Dispatching job: HEP@7086362[d=true,io=0,w=true,b=0|0]
> 11:41:30,770 | DEBUG | btpool0-3  | ConsumerProcessor        | p.processors.ConsumerProcessor  122 | Receiving HTTP request: POST /hello-doc/ HTTP/1.1
> Content-Type: text/xml
> User-Agent: Jakarta Commons-HttpClient/3.0
> Host: localhost:8080
> Content-Length: 1099
> 11:41:30,852 | DEBUG | btpool0-3  | HttpComponent            | emix.common.AsyncBaseLifeCycle  532 | Created correlation id: ID:feistyfawn-1143-1184581994568-4:0
> 11:41:30,852 | DEBUG | btpool0-3  | DeliveryChannelImpl      | .messaging.DeliveryChannelImpl  411 | Send ID:feistyfawn-1143-1184581994568-4:0 in DeliveryChannel{servicemix-http}
> 11:41:30,853 | DEBUG | btpool0-3  | SedaFlow                 | emix.jbi.nmr.flow.AbstractFlow  121 | Called Flow send
> 11:41:30,859 | DEBUG | btpool0-3  | ConsumerProcessor        | p.processors.ConsumerProcessor  186 | Suspending continuation for exchange: ID:feistyfawn-1143-1184581994568-4:0
> 11:41:30,864 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-1 | SedaQueue                | .jbi.nmr.flow.seda.SedaQueue$1  132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@1f2a8fb dequeued exchange: InOut[
>   id: ID:feistyfawn-1143-1184581994568-4:0
>   status: Active
>   role: provider
>   interface: {urn:/HelloWorld2.wsdl}HelloPortType
>   service: {urn:/HelloWorld2.wsdl}HelloService
>   endpoint: HelloPort
>   operation: {urn:/HelloWorld2.wsdl}HelloRequest
>   in: <?xml version="1.0" encoding="UTF-8"?><HelloRequest xmlns="urn:/HelloWorld2.wsdl" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
>         <text>hello</text>
>     </HelloRequest>
> ]
> 11:41:30,864 | DEBUG | Thread-8   | DeliveryChannelImpl      | .messaging.DeliveryChannelImpl  263 | Accepting ID:feistyfawn-1143-1184581994568-4:0 in DeliveryChannel{OdeBpelEngine}
> 11:41:30,868 | INFO  | pool-3-thread-1 | Runtime                  | log.Log4JLogFactory$LogAdapter   80 | Starting OpenJPA 0.9.7-incubating
> 11:41:30,870 | INFO  | pool-3-thread-1 | JDBC                     | log.Log4JLogFactory$LogAdapter   80 | OpenJPA will now connect to the database to attempt to determine what type of database dictionary to use.  To prevent this connection in the future, set your openjpa.jdbc.DBDictionary configuration property to the appropriate value for your database (see the documentation for available values).
> 11:41:30,871 | INFO  | pool-3-thread-1 | JDBC                     | log.Log4JLogFactory$LogAdapter   80 | Using dictionary class "org.apache.openjpa.jdbc.sql.DerbyDictionary" (Apache Derby 10.2.1.6 - (452058) ,Apache Derby Embedded JDBC Driver 10.2.1.6 - (452058)).
> 11:41:31,100 | ERROR | pool-3-thread-1 | OdeService               | org.apache.ode.jbi.OdeService   256 | ODE MEX {MyRoleMex#hqejbhcnphr2fkf9c2wei9 [Client ID:feistyfawn-1143-1184581994568-4:0] calling {urn:/HelloWorld2.wsdl}HelloService.HelloRequest(...)} was unroutable.
> 11:41:31,100 | DEBUG | pool-3-thread-1 | DeliveryChannelImpl      | .messaging.DeliveryChannelImpl  411 | Send ID:feistyfawn-1143-1184581994568-4:0 in DeliveryChannel{OdeBpelEngine}
> 11:41:31,101 | DEBUG | pool-3-thread-1 | SedaFlow                 | emix.jbi.nmr.flow.AbstractFlow  121 | Called Flow send
> 11:41:31,138 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-2 | SedaQueue                | .jbi.nmr.flow.seda.SedaQueue$1  132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@1ea5711 dequeued exchange: InOut[
>   id: ID:feistyfawn-1143-1184581994568-4:0
>   status: Error
>   role: consumer
>   interface: {urn:/HelloWorld2.wsdl}HelloPortType
>   service: {urn:/HelloWorld2.wsdl}HelloService
>   endpoint: HelloPort
>   operation: {urn:/HelloWorld2.wsdl}HelloRequest
>   in: <?xml version="1.0" encoding="UTF-8" standalone="no"?><HelloRequest xmlns="urn:/HelloWorld2.wsdl" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
>         <text>hello</text>
>     </HelloRequest>
>   error: java.lang.IllegalArgumentException: Unroutable invocation.
> ]
> 11:41:31,138 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-2 | HttpComponent            | emix.common.AsyncBaseLifeCycle  419 | Received exchange: status: Error, role: consumer
> 11:41:31,139 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-2 | HttpComponent            | emix.common.AsyncBaseLifeCycle  487 | Retrieved correlation id: ID:feistyfawn-1143-1184581994568-4:0
> 11:41:31,139 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-2 | ConsumerProcessor        | p.processors.ConsumerProcessor   98 | Resuming continuation for exchange: ID:feistyfawn-1143-1184581994568-4:0
> 11:41:31,139 | DEBUG | btpool0-0 - Acceptor0 SelectChannelConnector @ localhost:8080 | JettyContextManager      | ntextManager$ThreadPoolWrapper  437 | Dispatching job: HEP@7086362[d=true,io=0,w=true,b=0|0]
> 11:41:31,140 | DEBUG | btpool0-3  | ConsumerProcessor        | p.processors.ConsumerProcessor  122 | Receiving HTTP request: POST /hello-doc/ HTTP/1.1
> Content-Type: text/xml
> User-Agent: Jakarta Commons-HttpClient/3.0
> Host: localhost:8080
> Content-Length: 1099
> 11:41:31,141 | WARN  | btpool0-3  | jetty                    | ervicemix.http.jetty.JCLLogger   93 | EXCEPTION
> javax.servlet.ServletException: Failed to process request: java.lang.Exception: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:79)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:445)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:356)
>         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:627)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)
>         at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:123)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:141)
>         at org.mortbay.jetty.Server.handle(Server.java:269)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:430)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:333)
>         at org.mortbay.jetty.nio.HttpChannelEndPoint.run(HttpChannelEndPoint.java:270)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
> 11:41:31,143 | WARN  | btpool0-3  | jetty                    | ervicemix.http.jetty.JCLLogger   93 | Nested in javax.servlet.ServletException: Failed to process request: java.lang.Exception: java.lang.IllegalArgumentException: Unroutable invocation.:
> java.lang.Exception: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:214)
>         at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:445)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:356)
>         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:627)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)
>         at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:123)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:141)
>         at org.mortbay.jetty.Server.handle(Server.java:269)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:430)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:333)
>         at org.mortbay.jetty.nio.HttpChannelEndPoint.run(HttpChannelEndPoint.java:270)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
> Caused by: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:257)
>         at org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:148)
>         at org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:47)
>         at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
> 11:41:31,148 | WARN  | btpool0-3  | jetty                    | ervicemix.http.jetty.JCLLogger   93 | /hello-doc/:
> java.lang.Exception: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:214)
>         at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:445)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:356)
>         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:627)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)
>         at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:123)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:141)
>         at org.mortbay.jetty.Server.handle(Server.java:269)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:430)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:333)
>         at org.mortbay.jetty.nio.HttpChannelEndPoint.run(HttpChannelEndPoint.java:270)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
> Caused by: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:257)
>         at org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:148)
>         at org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:47)
>         at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
> 11:41:31,148 | WARN  | btpool0-3  | jetty                    | ervicemix.http.jetty.JCLLogger   93 | /hello-doc/
> java.lang.Exception: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:214)
>         at org.apache.servicemix.http.HttpBridgeServlet.doPost(HttpBridgeServlet.java:71)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:445)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:356)
>         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:627)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:149)
>         at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:123)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:141)
>         at org.mortbay.jetty.Server.handle(Server.java:269)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:430)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:333)
>         at org.mortbay.jetty.nio.HttpChannelEndPoint.run(HttpChannelEndPoint.java:270)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
> Caused by: java.lang.IllegalArgumentException: Unroutable invocation.
>         at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:257)
>         at org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:148)
>         at org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:47)
>         at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)
> 11:41:31,212 | DEBUG | btpool0-0 - Acceptor0 SelectChannelConnector @ localhost:8080 | JettyContextManager      | ntextManager$ThreadPoolWrapper  437 | Dispatching job: HEP@7086362[d=true,io=1,w=true,b=0|0]

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.