You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Davanum Srinivas (JIRA)" <ji...@apache.org> on 2007/04/20 20:34:15 UTC

[jira] Commented: (AXIS2-2484) IllegalArgumentException: Null InputStream is not a valid argument when loading axis client from URLClassLoader

    [ https://issues.apache.org/jira/browse/AXIS2-2484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12490419 ] 

Davanum Srinivas commented on AXIS2-2484:
-----------------------------------------

Fixed in svn revision 530880

thanks,
dims

> IllegalArgumentException: Null InputStream is not a valid argument when loading axis client from URLClassLoader
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-2484
>                 URL: https://issues.apache.org/jira/browse/AXIS2-2484
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 1.1.1
>         Environment: Sun JDK 1.4.2, Axis 1.1.1, Windows 2000, ADB data binding
>            Reporter: Jacques Desmazieres
>
> I have a application with a plugin feature. I have implemented an Axis 2 service and generated both service and client using java2wsdl and wsdl2java.
> When invoking the service using the generated client, loaded in the classpath, everything is ok. 
> But when I load the client in an URLClassloader, with all the Axis2 libraries specified in the url[] parameter, I have the following message:
> java.lang.IllegalArgumentException: Null InputStream is not a valid argument
> 	at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:602)
> 	at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:305)
> 	at org.apache.axiom.om.util.StAXUtils.createXMLStreamReader(StAXUtils.java:129)
> 	at org.apache.axis2.deployment.DescriptionBuilder.buildOM(DescriptionBuilder.java:86)
> 	at org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:58)
> 	at org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:690)
> 	at org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(FileSystemConfigurator.java:109)
> After some investigation, it appears that the exception is raised beacause the FileSystemConfigurator class cannot find the default axis2.xml configuration file.
> I have found that the issue comes from the loading of the default axis2.xml config file in the  org.apache.axis2.deployment.getAxisConfiguration() method line 106:
> ClassLoader cl = Thread.currentThread().getContextClassLoader();
> In my case, the classloader retrieved is the one of the calling application (not the plugin's classloader) and so the axis2 (and mainly axis2-kernel-1.1.1.jar) is not found.
> Why retrieving the context classloader ? Is there a reason for that ? Can I fix that with a proper configuration ? Deploying the axis2 kernel jar at application level is not an option.
> If you replace the source code line by the following fixes the problem:
> ClassLoader cl = getClass().getClassLoader();
> As we retrieve the service client's classloader, Axis is able to find the default configuration file.
> Jacques Desmazières

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org