Hello,

I am having problems running more than one RESTful service, loaded via Spring. Without going into the nasties of how this was determined, with the help of a developer, it was determined that the present means of configuring a RESTful service with Spring was as follows (in my beans.xml file):

  <bean id="userService"
      class="org.apache.cxf.jaxws.JaxWsServerFactoryBean"
      init-method="create">
      <property name="serviceClass"
          value="com.brad.user.IUserService" />
      <property name="serviceBean">
          <bean class="com.brad.user.UserService" />
      </property>
      <property name="address" value="/UserService" />
      <property name="bindingId"
          value="http://apache.org/cxf/binding/http"; />
      <property name="serviceFactory" ref="JaxWsServiceFactoryBean" />
  </bean>

This service, when configured as the only service in my beans.xml file, loads and is invoked successfully. But when I add a second service to my beans.xml, as follows:

  <bean id="sponsorService"
      class="org.apache.cxf.jaxws.JaxWsServerFactoryBean"
      init-method="create">
      <property name="serviceClass"
          value="com.brad.sponsor.ISponsorService" />
      <property name="serviceBean">
          <bean class="com.brad.sponsor.SponsorService" />
      </property>
      <property name="address" value="/SponsorService" />
      <property name="bindingId"
          value="http://apache.org/cxf/binding/http"; />
      <property name="serviceFactory" ref="JaxWsServiceFactoryBean" />
  </bean>

When I deploy and start my server, on load I get no errors. But I also do not see this second service produce output in the server logs like the first one does. The first service, I see this in the logs:

INFO: Creating Service {http://user.brad.com/}IUserServiceService from class com.brad.user.IUserService

But I do not see this for my second (ISponsorService) service. When I try to invoke *either* service, CXF crashes. The stack trace is below. Does anyone have any idea how to configure and successfully run more than one RESTful service using Spring? Thanks in advance for help!!!

Brad

Stack trace, when trying to invoke the authenticate method on IUserService, that is known to work, with data known to work, when 2 services are configured (this does not happen when only one service has been configured).

INFO: URIParameterInterceptor handle message on path [/authenticate] with content-type [application/xml] Jul 16, 2007 4:11:03 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
INFO: Interceptor has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: object is not an instance of declaring class at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:88) at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:82) at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:56) at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:56) at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37) at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:87) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:206) at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:67) at org.apache.cxf.transport.servlet.ServletDestination.doMessage(ServletDestination.java:100) at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:224) at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:103) at org.apache.cxf.transport.servlet.CXFServlet.invoke(CXFServlet.java:261) at org.apache.cxf.transport.servlet.CXFServlet.doPost(CXFServlet.java:239)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:270) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:191) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:227) 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:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:211) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:817) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:623) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:444)
   at java.lang.Thread.run(Thread.java:595)




Brad

Reply via email to