0 Replies Latest reply on Oct 20, 2008 2:15 AM by Dominic Lovell

    Errors when deploying WebServices modules

    Dominic Lovell Newbie

      I'm using JBOSS AP 4.2.3, and I have generated some web services components with MyEclipse using JAX-WS. When I deploy my war I receive the following errors:

      16:24:16,078 ERROR [STDERR] 20/10/2008 16:24:15 com.sun.xml.ws.transport.http.servlet.WSServletContextListener contextInitialized
      INFO: WSSERVLET12: JAX-WS context listener initializing
      16:24:19,046 INFO [XmlConfigurationProvider] Parsing configuration file [struts-default.xml]
      16:24:19,562 INFO [XmlConfigurationProvider] Parsing configuration file [struts-plugin.xml]
      16:24:19,593 INFO [XmlConfigurationProvider] Parsing configuration file [struts.xml]
      16:24:19,609 WARN [Settings] Settings: Could not parse struts.locale setting, substituting default VM locale
      16:24:20,203 INFO [ObjectTypeDeterminerFactory] Setting DefaultObjectTypeDeterminer as default ...
      16:24:20,218 ERROR [STDERR] 20/10/2008 16:24:20 com.sun.xml.ws.transport.http.servlet.WSServletDelegate init
      INFO: WSSERVLET14: JAX-WS servlet initializing

      ..., specifically concerned with the lines that include WSSERVLET12 and WSSERVLET14 which are really just debug messages, i.e the date/time the class, the methods and a message. However, they are being reported as ERROR from STDERR.

      The parts of my web.xml that are concerned with this are as follows:

       <servlet>
       <description>
       JAX-WS endpoint - SupplierAccessService
       </description>
       <display-name>SupplierAccessService</display-name>
       <servlet-name>SupplierAccessService</servlet-name>
       <servlet-class>
       com.sun.xml.ws.transport.http.servlet.WSServlet
       </servlet-class>
       <load-on-startup>1</load-on-startup>
       </servlet>
      
       <listener>
       <listener-class>
       com.sun.xml.ws.transport.http.servlet.WSServletContextListener
       </listener-class>
       </listener>
      
      


      I had a look at the source code for WSServletContextListener, and WSServlet and they appear to be logging info message, eg: WSServletContextListener

       public void contextInitialized(ServletContextEvent event)
       {
       if(logger.isLoggable(Level.INFO))
       {
       logger.info(localizer.localize(messageFactory.getMessage("listener.info.initialize", new Object[0])));
       }
       context = event.getServletContext();
       classLoader = Thread.currentThread().getContextClassLoader();
       if(classLoader == null)
       {
       classLoader = getClass().getClassLoader();
       }
       try
       {
       Map docs = new HashMap();
       collectDocs(context, "/WEB-INF/wsdl", docs);
       logger.fine((new StringBuilder()).append("war metadata=").append(docs).toString());
       RuntimeEndpointInfoParser parser = new RuntimeEndpointInfoParser(classLoader);
       java.io.InputStream is = context.getResourceAsStream("/WEB-INF/sun-jaxws.xml");
       List endpoints = parser.parse(is);
       context.setAttribute("com.sun.xml.ws.server.http.info", endpoints);
       createWebServiceContext(endpoints);
       createModelAndMetadata(endpoints, docs);
       }
       catch(Exception e)
       {
       logger.log(Level.SEVERE, localizer.localize(messageFactory.getMessage("listener.parsingFailed", new Object[] {
       e.toString()
       })), e);
       context.removeAttribute("com.sun.xml.ws.server.http.info");
       throw new WSServletException("listener.parsingFailed", new Object[] {
       e
       });
       }
       }
      


      ... and the properties key that matches "listener.info.initialize" is:
      "listener.info.initialize=WSSERVLET12: JAX-WS context listener initializing"
      from the wsservlet.properties in my jaxws-rt-2.0EA3.jar. Which is exactly the message being reported. The class' logger is java.util.logging.Logger.

      When I run the same WAR in Tomcat 5.5 I simply get the INFO messages reported.

      Can anyone please explain why I am having errors reported when my war is being deployed? Have I done something wrong?