Date: Mon, 9 May 2016 18:23:46 +0000
From: cdelunasa...@yahoo.com.mx.INVALID
To: java-user@axis.apache.org
Subject: Spring context not found!!!
I am trying to get wome axis2 webservices to run, and i have deployed "well"
(no error at deploying time in tomcat) but i have a problem when trying to
consume the methods:may 09, 2016 1:14:53 PM
org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
getServiceObjectADVERTENCIA: Axis2 Can't find Spring's ApplicationContextmay
09, 2016 1:14:53 PM org.apache.axis2.rpc.receivers.RPCMessageReceiver
invokeBusinessLogicGRAVE: Exception occurred while trying to invoke service
method null
MG>org.apache.axis2.receivers.AbstractMessageReceiver.makeNewServiceObject
fails to locate ServiceObjectParameter parameter if
(service.getParameter(Constants.SERVICE_OBJECT_SUPPLIER) != null) {
Parameter serviceObjectParam =
service.getParameter(Constants.SERVICE_OBJECT_SUPPLIER); final
Class serviceObjectMaker = Loader.loadClass(classLoader, ((String)
serviceObjectParam.getValue()).trim());
// Find static getServiceObject() method, call it if there
final Method method = (Method)
org.apache.axis2.java.security.AccessController.doPrivileged(
new PrivilegedExceptionAction() { public Object
run() throws NoSuchMethodException { return
serviceObjectMaker.getMethod("getServiceObject",
new Class[]{AxisService.class}); }
} ); if (method != null) {
return org.apache.axis2.java.security.AccessController.doPrivileged(
new PrivilegedExceptionAction() {
public Object run() throws InvocationTargetException,
IllegalAccessException, InstantiationException {
return method.invoke(serviceObjectMaker.newInstance(), new
Object[]{service}); }
} ); } }
Parameter implInfoParam =
service.getParameter(Constants.SERVICE_CLASS); if (implInfoParam !=
null) { final Class implClass = Loader.loadClass(
classLoader, ((String)
implInfoParam.getValue()).trim()); return
org.apache.axis2.java.security.AccessController.doPrivileged(
new PrivilegedExceptionAction() { public Object
run() throws InstantiationException, IllegalAccessException {
return implClass.newInstance(); }
} ); } else { throw
new AxisFault(
Messages.getMessage("paramIsNotSpecified", "SERVICE_OBJECT_SUPPLIER"));
}
org.apache.axis2.AxisFault: The SERVICE_OBJECT_SUPPLIER parameter is not
specified. at
org.apache.axis2.receivers.AbstractMessageReceiver.makeNewServiceObject(AbstractMessageReceiver.java:247)
at
org.apache.axis2.receivers.AbstractMessageReceiver.getTheImplementationObject(AbstractMessageReceiver.java:282)
at
org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:78)
at
org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at
org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181) at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1502)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1458)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
My Web.xml:
<?xml version="1.0" encoding="UTF-8"?><web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID"
version="3.1"> <display-name>inventarioAJWeb</display-name>
<welcome-file-list> <welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file> </welcome-file-list>
<context-param> <param-name>contextConfigLocation</param-name>
<param-value> /WEB-INF/application-context.xml </param-value>
</context-param> <context-param>
<param-name>facelets.SKIP_COMMENTS</param-name>
<param-value>true</param-value> </context-param> <context-param>
<param-name>log4j-config-location</param-name>
<param-value>/WEB-INF/log4j.properties</param-value> </context-param>
<context-param> <description>State saving method: 'client' or 'server'
(=default). See JSF Specification 2.5.2</description>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value> </context-param> <context-param>
<param-name>primefaces.THEME</param-name>
<param-value>aristo</param-value> </context-param> <context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value> </context-param> <context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value> </context-param>
<context-param>
<param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
<param-value>false</param-value> </context-param> <context-param>
<param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
<param-value>resources.application</param-value> </context-param>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener> <!-- Servlets --> <!-- JSF mapping --> <servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup> </servlet> <!-- Apache Axis2 web
service Servlet --> <servlet> <display-name>Apache-Axis
Servlet</display-name> <servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
<load-on-startup>1</load-on-startup> </servlet> <servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern> </servlet-mapping> <servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern> </servlet-mapping> <!-- Apache Axis2
web service Servlet Mapping --> <servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern> </servlet-mapping></web-app>
my services.xml:
<serviceGroup> <service name="catalogoSync"> <description>
Este WS sera utilizado para la sincronización de catálogos.
</description> <messageReceivers> <messageReceiver
mep="http://www.w3.org/2004/08/wsdl/in-only"
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</messageReceivers> <parameter name="ServiceClass"
locked="false">mx.gob.scjn.inventarioAJ.ws.CatalogoSyncImpl </parameter>
<operation name="getCatalogoCiudades"
mep="http://www.w3.org/2004/08/wsdl/in-out" /> <operation
name="getCatalogoEstado" mep="http://www.w3.org/2004/08/wsdl/in-out" />
<!-- axis2-spring.jar with
org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
needs to be ON CLASSPATH --> <parameter
name="ServiceObjectSupplier">org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier</parameter>
<!-- ALSO make SURE SpringServletContextObjectSupplier.class contains
getServiceObject method -->
http://www.grepcode.com/search/?query=org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
I really can't see why Axis2 cant locate my application-context file and I
GUESS that that is the root couse of the error.Greetings.CLS
Saludos Cordiales desde las Americas