Finally!
This one was giving me trouble. Had to pick it apart bit by bit.
Turns out the problem wasn't in the change (revision 785901) itself.
This was a classic case of fix a bug and find a bug you didn't know
you already had. We had a chunk of code that scanned for annotated
@WebService and @WebServiceProvider classes in a webapp that would
never actually find anything ever. The change fixed it so that it
would now find them as expected and there was actually a bug in the
code that would have executed had it found any such classes. So I
patched up that code and now all works as it should have.
I guess people using @WebService and @WebServiceProvider must have
been listing them in the web.xml explicitly -- or annotating them as
EJBs.
Anyway, committing the fix now. New binaries to follow, this time
with a vote.
-David
On Oct 8, 2009, at 9:30 PM, David Blevins wrote:
Narrowed it down to this change:
http://svn.apache.org/viewvc?view=rev&revision=785901
Nothing jumps out from the commit, going to have to dig in with a
debugger.
-David
On Oct 8, 2009, at 5:18 PM, David Blevins wrote:
I rolled the binaries:
https://repository.apache.org/content/repositories/openejb-012/
When running the tests on the uploaded binaries it seems we do have
one Tomcat failure related to webservices.
Attempting to hunt down the problem now.
itests.tomcat.run:
[java] _________________________________________________
[java] |_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|
[java]
[java] Running EJB compliance tests on HTTP/Tomcat Server
[java] _________________________________________________
[java] ............................F.............
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] .........................................
[java] ......................................
[java] Time: 12.769
[java]
[java] ~~ Failure Results ~~~~~~~~~
[java]
[java] There was 1 failure:
[java]
[java] Failure Summary:
[java] 1) Servlet.WebserviceServlet.invokePojoWebservice
[java]
[java] Failure Details:
[java]
[java] 1) Servlet.WebserviceServlet.invokePojoWebservice
[java] "java.lang.reflect.InvocationTargetException
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
[java] at
sun
.reflect
.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at java.lang.reflect.Method.invoke(Method.java:592)
[java] at
org
.apache
.openejb
.test.servlet.WebserviceServlet.service(WebserviceServlet.java:50)
[java] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
[java] at
org
.apache
.catalina
.core
.ApplicationFilterChain
.internalDoFilter(ApplicationFilterChain.java:269)
[java] at
org
.apache
.catalina
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
188)
[java] at
org
.apache
.catalina
.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
[java] at
org
.apache
.catalina
.core.StandardContextValve.invoke(StandardContextValve.java:174)
[java] at
org
.apache
.openejb.tomcat.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
[java] at
org
.apache
.catalina
.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
[java] at
org
.apache
.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
[java] at
org
.apache
.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
[java] at
org
.apache
.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
108)
[java] at
org
.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
174)
[java] at
org
.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
874)
[java] at org.apache.coyote.http11.Http11BaseProtocol
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:
665)
[java] at
org
.apache
.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:
528)
[java] at
org
.apache
.tomcat
.util
.net
.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
[java] at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:689)
[java] at java.lang.Thread.run(Thread.java:613)
[java] Caused by: javax.xml.ws.soap.SOAPFaultException: Could
not send Message.
[java] at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:
192)
[java] at $Proxy113.hello(Unknown Source)
[java] at
org
.apache
.openejb
.test
.servlet
.WebserviceServlet.invokePojoWebservice(WebserviceServlet.java:77)
[java] ... 22 more
[java] Caused by: org.apache.cxf.interceptor.Fault: Could not
send Message.
[java] at
org
.apache
.cxf
.interceptor
.MessageSenderInterceptor
.handleMessage(MessageSenderInterceptor.java:48)
[java] at
org
.apache
.cxf
.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:
220)
[java] at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:276)
[java] at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:222)
[java] at
org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
[java] at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:
171)
[java] ... 24 more
[java] Caused by: java.net.MalformedURLException: Invalid
address. Endpoint address cannot be null.
[java] at
org.apache.cxf.transport.http.HTTPConduit.getURL(HTTPConduit.java:
760)
[java] at
org.apache.cxf.transport.http.HTTPConduit.getURL(HTTPConduit.java:
745)
[java] at
org.apache.cxf.transport.http.HTTPConduit.setupURL(HTTPConduit.java:
677)
[java] at
org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:
472)
[java] at
org
.apache
.cxf
.interceptor
.MessageSenderInterceptor
.handleMessage(MessageSenderInterceptor.java:46)
[java] ... 29 more"
[java]
[java] FAILURES!!!
[java] Tests run: 1350, Failures: 1, Errors: 0
[java]
[java]
[java] _________________________________________________
[java] CLIENT JNDI PROPERTIES
[java] java.naming.provider.url = http://127.0.0.1:8080/openejb/
ejb
[java] java.naming.factory.initial =
org.apache.openejb.client.RemoteInitialContextFactory
[java] _________________________________________________