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 <da...@gmail.com> on 2005/01/25 17:27:16 UTC

Re: [jira] Commented: (AXIS-1776) Client configuration '.wsdd' fi les not found when packaged in an ejb-jar file.

Andrei,

so that would work as well. right?

thanks,
dims


On Tue, 25 Jan 2005 16:51:45 +0100, Iltchenko, Andrei
<An...@nl.compuware.com> wrote:
> Dims,
> 
> If we address the problem in the way you want, we'll have to change the
> search order in 'ClassUtils#getResourceAsStream' so that it searches through
> the thread context class loader first and only then tries the defining class
> loader of 'clazz' (AxisEngine in our context). This might be a more
> intrusive and subtle change than adding 'EngineConfigurationFactoryEJB'
> given the number of users of the helper, but you know far better of
> course...
> 
> The current declaration:
>      public static InputStream getResourceAsStream(Class clazz, String
> resource) {
>         InputStream myInputStream = null;
> 
>         if(clazz.getClassLoader()!=null) {
>             // Try the class loader that loaded this class.
>             myInputStream =
> clazz.getClassLoader().getResourceAsStream(resource);
>         } else {
>             // Try the system class loader.
>             myInputStream =
> ClassLoader.getSystemClassLoader().getResourceAsStream(resource);
>         }
>         if (myInputStream == null &&
> Thread.currentThread().getContextClassLoader() != null) {
>             // try the context class loader.
>             myInputStream =
> Thread.currentThread().getContextClassLoader().getResourceAsStream(resource)
> ;
>         }
>         if (myInputStream == null) {
>             // if not found in classpath fall back to default
>             myInputStream = clazz.getResourceAsStream(resource);
>         }
>         return myInputStream;
>     }
> 
> Regards,
> Andrei.
> 
> -----Original Message-----
> From: Davanum Srinivas (JIRA) [mailto:axis-dev@ws.apache.org] 
> Sent: Tuesday, January 25, 2005 16:45
> To: andrei.iltchenko@nl.compuware.com
> Subject: [jira] Commented: (AXIS-1776) Client configuration '.wsdd' files
> not found when packaged in an ejb-jar file.
> 
>      [
> http://issues.apache.org/jira/browse/AXIS-1776?page=comments#action_58043 ]
> 
> Davanum Srinivas commented on AXIS-1776:
> ----------------------------------------
> 
> Andrei,
> 
> is it not enough to just change the order of how we look for the wsdd in the
> classpath (see ClassUtils#getResourceAsStream). I'd like to keep the
> EngineConfigurationFactoryDefault as-is, get rid of the extra
> EngineConfigurationFactoryEJB and change already existing code.
> 
> thanks,
> dims
> 
> > Client configuration '.wsdd' files not found when packaged in an ejb-jar
> file.
> >
> ----------------------------------------------------------------------------
> --
> >
> >          Key: AXIS-1776
> >          URL: http://issues.apache.org/jira/browse/AXIS-1776
> >      Project: Axis
> >         Type: Bug
> >   Components: Deployment / Registries
> >     Versions: current (nightly)
> >  Environment: An EJB 2.0 compliant EJB container.
> >     Reporter: Andrei Iltchenko
> >  Attachments: 1776.jar, 1776.txt, 1776.txt
> >
> > When run from within an EJB container, Axis cannot find a client
> configuration '.wsdd' file when the latter is packaged as part of an ejb-jar
> file and the Application server uses distinct class loaders per ejb-jar of a
> J2EE application. As a result the default client configuration file from
> 'org/apache/axis/client/client-config.wsdd' gets picked up, which doesn't
> necessarily contain the configuration needed.
> > The problem is essentially caused by us not having an
> 'EngineConfigurationFactory' that is capable of finding resources through
> the context class loader. The patch that I am going to supply addresses the
> problem and has been tested on WebLogic 8.x and Jboss 3.x.x.
> 
> --
> This message is automatically generated by JIRA.
> -
> If you think it was sent incorrectly contact one of the administrators:
>    http://issues.apache.org/jira/secure/Administrators.jspa
> -
> If you want more information on JIRA, or have a bug to report see:
>    http://www.atlassian.com/software/jira
> 
> --
> The contents of this e-mail are intended for the named addressee only. It
> contains information that may be confidential. Unless you are the named
> addressee or an authorized designee, you may not copy or use it, or disclose
> it to anyone else. If you received it in error please notify us immediately
> and then destroy it.
> 
> 


-- 
Davanum Srinivas - http://webservices.apache.org/~dims/