Re: [SOLVED] Problem running Web Services WO server _within_ WOLips

From: Chuck Hill (chil..lobal-village.net)
Date: Tue Mar 08 2005 - 13:10:06 EST

  • Next message: Chuck Hill: "Re: Where is ${Classes.dir} set?"

    On Mar 8, 2005, at 3:51 AM, Des Oates wrote:

    > Sometimes things are so obvious when they're laid out right in front
    > of you : -)
    >
    > Yes that was exactly the solution. These jars in
    > "Library/WebObjects/Extensions/" (or
    > C:\Apple\Local\Library\WebObjects\Extensions) are required at runtime
    > but they are not included by default in the default WOLips runtime
    > classpath.
    >
    > Manually adding them to the run classpath options (in the User
    > section) fixes this problem
    >
    > As an aside, I noticed that they are not included in the classpath
    > files in the deployed installations from WOLips either. So the
    > application container must implicitly look in the extensions folder at
    > boot time.
    >
    The wobootstrap.jar application loader "knows" about this directory and
    puts the jar files in it on the classpath.

    Chuck

    > On 8 Mar 2005, at 01:40, Stephen Coy wrote:
    >
    >> Hi,
    >>
    >> You need to have the jars in /Library/WebObjects/Extensions in your
    >> classpath as well. All the axis stuff is in there.
    >>
    >> Also, as far we can determine, WO is using axis 1.0. If you mix that
    >> with newer releases you will see issues such as your
    >> java.lang.AbstractMethodError below (voice of experience speaking :-)
    >> ).
    >>
    >> Steve Coy
    >>
    >> On 08/03/2005, at 10:20 AM, Des Oates wrote:
    >>
    >>> On 7 Mar 2005, at 17:55, Chuck Hill wrote:
    >>>
    >>>>
    >>>> On Mar 6, 2005, at 1:45 AM, Des Oates wrote:
    >>>>
    >>>>> Thanks for the hint. I tried this out but I had no luck. I
    >>>>> replaced the entire classpath contents in the Run... window with
    >>>>> the libraries and jars included in the development project but
    >>>>> with no success. I'm now getting a different error though. I now
    >>>>> get this:
    >>>>>
    >>>>> Exception in thread "main" java.lang.NoClassDefFoundError
    >>>>> at
    >>>>> com.webobjects.foundation._NSUtilities.<clinit>(_NSUtilities.java:
    >>>>> 154)
    >>>>> at
    >>>>> com.webobjects.appserver.WOApplication.<clinit>(WOApplication.java:
    >>>>> 165
    >>>> More of the error message log (before and after) might help. It
    >>>> looks like it can't find your main Application class. That
    >>>> suggests that the classpath to the
    >>>> Appname.woa/Contents/Resources/Java or the jar file in there is
    >>>> missing or the app is not built.
    >>>>
    >>>
    >>> That was the entire dump believe it or not. But I think this is a
    >>> red herring now, since I had put all my classpath entries in the
    >>> Bootstrap section when I ran that before, which as you say is the
    >>> wrong thing to do.
    >>>
    >>> So now I've corrected this and moved everything in the User section.
    >>> It now matches my project libraries.
    >>>
    >>> I've attached screenshots of my (1) Run... classpath entries, and
    >>> (2) project classpath entries. The only visible differences here is
    >>> the inclusion of "WO Frameworks" at the bottom of the run entries.
    >>> but that is just a user library that contains the 11 frameworks
    >>> listed above it.
    >>>
    >>> So, If I install and Run the WO app using the WOLips 'Install'
    >>> command, it will install and run fine. If I run with this setup
    >>> from with Eclipse I get a crash with this dump output:
    >>>
    >>> [2005-03-07 22:52:31 GMT] <main> java.lang.NoClassDefFoundError:
    >>> org/apache/axis/AxisFault
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:141)
    >>> at
    >>> com.webobjects.webservices.generation._WSRuleUtilities.class$(_WSRule
    >>> Utilities.java:34)
    >>> at
    >>> com.webobjects.webservices.generation._WSRuleUtilities.<clinit>(_WSRu
    >>> leUtilities.java:39)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:141)
    >>> at
    >>> com.webobjects.foundation._NSUtilities._classWithPartialName(_NSUtili
    >>> ties.java:307)
    >>> Full dump is given in attached file 'log1_noaxis.txt'
    >>>
    >>> So it's looking for axis right? Should it not be picking the axis
    >>> class up from the WO Webservices Support framework ? Can anyone
    >>> confirm where WO's Axis implementation is contained?
    >>>
    >>> So, although this is probably not the right thing to do, I then
    >>> include axis.jar in the runtime classpath, It does run, until it
    >>> has to load the Web services. Then it bombs with this dump:
    >>>
    >>> [2005-03-07 22:58:38 GMT] <main> Creating LifebeatThread now with:
    >>> JavaFoundation 52532 deslaptop.local/10.44.248.75 1085 30000
    >>> Welcome to Prototype Server !
    >>> Initializing WebServices...
    >>> [2005-03-07 22:58:39 GMT] <main> A fatal exception occurred:
    >>> com.webobjects.webservices.support.WOXMLProvider.getRoles()Ljava/
    >>> util/List;
    >>> [2005-03-07 22:58:39 GMT] <main> java.lang.AbstractMethodError:
    >>> com.webobjects.webservices.support.WOXMLProvider.getRoles()Ljava/
    >>> util/List;
    >>> at
    >>> org.apache.axis.AxisEngine.refreshGlobalOptions(AxisEngine.java:479)
    >>> at
    >>> com.webobjects.webservices.support.WOXMLProvider.doConfigureEngine(WO
    >>> XMLProvider.java:85)
    >>> at
    >>> com.webobjects.webservices.support.WOXMLProvider.configureEngine(WOXM
    >>> LProvider.java:99)
    >>>
    >>>
    >>> Full listing is attached in file 'log2_waxis.txt'
    >>>
    >>> I get this on Mac and Windows repeatably and I'm totally stumped
    >>>
    >>> Thanks in advance for your help
    >>> Des
    >>>
    >>>
    >>> <Run_classpath.jpg>
    >>> <proj_classpath.jpg>
    >>> <log1_noaxis.txt><log2_waxis.txt>
    >>>
    >>
    >
    >

    -- 
    Practical WebObjects - a book for intermediate WebObjects developers  
    who want to increase their overall knowledge of WebObjects, or those  
    who are trying to solve specific application development problems.
    http://www.global-village.net/products/practical_webobjects
    



    This archive was generated by hypermail 2.0.0 : Tue Mar 08 2005 - 13:10:12 EST