You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by Apache Wiki <wi...@apache.org> on 2005/12/09 16:34:05 UTC

[Ws Wiki] Update of "FrontPage/Axis/DealingWithCommonExceptions" by RonReynolds

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ws Wiki" for change notification.

The following page has been changed by RonReynolds:
http://wiki.apache.org/ws/FrontPage/Axis/DealingWithCommonExceptions

------------------------------------------------------------------------------
  
   * '''Exception: Exception in thread "main" java.lang.NoClassDefFoundError: Software'''
  
- Make sure all directories listed in your { { { Axis/Tomcat/JDK } } } environment variables (in that order) do not contain spaces. 
+ Make sure all directories listed in your {{{ Axis/Tomcat/JDK }}} environment variables (in that order) do not contain spaces. 
  
  Example: 
  
@@ -49, +49 @@

    3. Encode these strings with custom escape-sequences, i.e. <company-name:esc value="0xC">, which your client must decode *after* standard String (de)serialization. 
  }}}
  
+  * '''org.apache.axis.ConfigurationException: No service named XXX is available'''
+ 
+ This is logged because this code in {{{AxisEngine}}} (line 308 in Axis 1.x):
+ {{{
+     public SOAPService getService(String name) throws AxisFault
+     {
+         try {
+             return config.getService(new QName(null, name));
+         } catch (ConfigurationException e) {
+             try {
+                 return config.getServiceByNamespaceURI(name);
+             } catch (ConfigurationException e1) {
+                 throw new AxisFault(e);
+             }
+         }
+     }
+ }}}
+ depends on an exception being thrown on the first attempt (line 311) to then try a different method of finding the service (which succeeds if you see no log of the AxisFault on line 316).  The log entry is created because a ConfigurationException logs itself (at DEBUG level) on creation (questionable practice, imho).  
+ To avoid this misleading log entry you'll want to add this to your log4j.properties file: {{{
+ log4j.logger.org.apache.axis.ConfigurationException = INFO
+ }}}
+