Title: Message
That goes under WEB-INF in the war file.
 
    MyApp.ear
        axis.jar
        my-axis-ejb-client.jar
        my-axis-web-app.war
            WEB-INF
                server-config.wsdd
 
-----Original Message-----
From: Brian Ko [mailto:[EMAIL PROTECTED]
Sent: Saturday, March 15, 2003 8:20 PM
To: '[EMAIL PROTECTED]'
Subject: RE: Packaging WSDL in an ear file

Naresh,
 
I am trying to do the similar project. However, I was not able to package server-config.wsdd. Where and how did you package it?
 
Brian
 
 -----Original Message-----
From: Naresh Bhatia [mailto:[EMAIL PROTECTED]
Sent: Saturday, March 15, 2003 2:03 AM
To: [EMAIL PROTECTED]
Subject: Packaging WSDL in an ear file

Hi,

My J2EE application is both an Axis client and an Axis Server. Since Axis.jar is quite large (~ 1MB), I would like to package it only once in my ear file. So, instead of putting it in my web-app, I am packaging it at the top level of my ear file where it is shared by the webapp and the ejb client. Here's the ear structure:

    MyApp.ear
        axis.jar
        my-axis-ejb-client.jar
        my-axis-web-app.war

This works fine for the most part, the client and the server are both functioning well. The only problem is where to place my WSDL (yes I need to use my own WSDL). I have setup my server-config.wsdd with the following wsdl specification:

    <wsdlFile>/myservice.wsdl</wsdlFile>

Unfortunately, with the ear packaging shown above, the classloader is looking for myservice.wsdl inside axis.jar - at its top level! I have verified this by placing the wsdl inside axis.jar. Is there a way to force axis to look for the wsdl elsewhere, preferably somewhere in my war? Even at the top level of my ear would be fine.

I see that axis uses "this.getClass().getResourceAsStream(filename)" to get at the WSDL. Since axis.jar is at the ear root, the classloader wants to look inside this jar!

Thanks.
Naresh

Reply via email to