Thanks again for this Peter. You hit the problem right smack on the
forehead. I wonder why com.nary.io.FileUtils.getRealpath("/") is
resulting in a "WEB-INF" directory? It can't be the same method that's
used in other places to resolve the BD lib path, or there'd be more
errors then just this one.
Warm regards,
Jordan Michaels
Vivio Technologies
http://www.viviotech.net/
Open BlueDragon Steering Committee
Adobe Solution Provider
Peter J. Farrell wrote:
> Hi Guys,
>
> I took a peek at the codebase. There are no hardcoded values for
> webservices. I do have a clue what is going on. The class that is
> throwing that exception is:
>
> com.naryx.tagfusion.cfm.xml.we.dynws.WSDL2java
>
> It looks for the "webservices.jar" in either the "java.class.path" or
> "sun.boot.class.path" system properties (line 195). If webservices.jar
> in neither of those paths, then it tries "libDir" + webservices.jar.
> The libDir is the result computed by
> com.nary.io.FileUtils.getRealpath("/"); (this is in cfWebServices.java).
>
> As a workaround, I bet if you put webservices.jar in the path specificed
> in java.class.path or "sun.boot.class.path" I bet WS would for you.
>
> I agree with Jordan. Something is foobar around here.
>
> HTH,
> .Peter
>
> Jordan Michaels said the following on 11/25/2009 05:30 PM:
>> Hi Alan,
>>
>> I think the key issue here is this error:
>>
>> /opt/openbd/tomcat/webapps/host-manager/WEB-INF/lib/webservices.jar does
>> not exist and is needed to compile web service type.
>>
>> ... and is most likely caused by either something that's been
>> accidentally hard-coded in the openbd source, or a problem with a config
>> somewhere. This theory can be tested by trying your code using the "war"
>> deployment method (which is usually what I resort to doing when I find
>> something that looks like this).
>>
>> - Uninstall the current instance of OpenBD
>> - Install a plane-jane Tomcat Instance (sudo apt-get install tomcat -
>> should do it)
>> - Then dropping the openbd.war into the webapps directory.
>>
>> From there, test your webservice in the "openbd" directory. If it
>> works, then the hypothesis is confirmed and we need to look over the
>> default configs and/or through the openbd source.
>>
>> I wish I had better news for you about this, but at least you can rest
>> assured that the issue is almost certainly not your own.
>>
>> If you do not have time to test this, I will get to it as my own time
>> allows.
>>
>> Warm regards,
>> Jordan Michaels
>> Vivio Technologies
>> http://www.viviotech.net/
>> Open BlueDragon Steering Committee
>> Adobe Solution Provider
>>
>>
>> Alan Holden wrote:
>>
>>> This is quite off-putting...
>>>
>>> I've copied this dang "tools.jar" file to every dang "/lib" directory on
>>> the server now, and still it wants to invoke webservices.jar on a
>>> nonexistent directory.
>>>
>>> All I did was download Jordan's installer and run it like he said. I
>>> checked every variable against my file system and entered them all
>>> carefully. This is a fresh Ubuntu 8.04 system. Wasn't this supposed to
>>> be a turnkey process? Where did I go astray?
>>>
>>> Alan K. Holden
>>>
>>> Alan Holden wrote:
>>>
>>>> The thread that would not die!
>>>>
>>>> OK, so I've been trying a new installation on Ubuntu 8.04.3 using
>>>> Jordan's OpenBD Installer (which version? well, most recently 1.2pl1 -
>>>> although I've tried installing and uninstalling the others too, honestly
>>>> I've lost track). I copy some web services code from my working openbd
>>>> machine install over to this one and I get the dreaded error
>>>> "java.lang.NoClassDefFoundError: sun/tools/javac/Main" when trying to
>>>> call a cfc - either locally or from the working machine.
>>>>
>>>> I've tried the oft-blogged fix, in which I copy the tools.jar from
>>>> /opt/openbd/jdk/lib over to /opt/openbd/lib. (I've even tried the
>>>> tools.jar that's way down in /usr/lib/jvm/java-6-sun-1.6.0.16/lib) But
>>>> when I restart openbd, the error changes to:
>>>> *General Runtime Error
>>>> Type Application
>>>> Detail Unrecognized error code: Failed to compile web service
>>>> generated client classes for http://[myfile].cfc?wsdl. The compiler
>>>> error messages follow:
>>>> /opt/openbd/tomcat/webapps/host-manager/WEB-INF/lib/webservices.jar does
>>>> not exist and is needed to compile web service type.
>>>> *
>>>> But there's no path like this in Jordan's installation. That particular
>>>> WEB-INF directory contains a web.xml file and nothing else. The
>>>> webservices.jar file is over in /opt/openbd/lib with everything else. I
>>>> can try to create my own /lib file there and slowly copy over each jar
>>>> that each subsequent error complains about not being there (saaj.jar,
>>>> webservices.jar, wsdl4j.jar, etc) and eventually arrive at an error
>>>> which informs me that "sun/tools/javac/Main is deprecated".
>>>>
>>>> This is web service code that already works on another version of openbd
>>>> that I installed on tomcat myself (Ubuntu 8.04.1). Everything's 777. The
>>>> catalina.out log looks like this:
>>>>
>>>> INFO: Server startup in 15590 ms
>>>> Nov 24, 2009 9:50:19 PM org.apache.commons.httpclient.HttpMethodBase
>>>> processCookieHeaders
>>>> WARNING: Cookie rejected: "$Version=0;
>>>> JSESSIONID=E5C73248478F518DB478A08D04B2154C; $Path=/openbd". Illegal path
>>>> attribute "/openbd". Path of origin: "/feed/utility.cfc"
>>>>
>>>> Is this a bug, or PEBKAC on my part?
>>>>
>>>> Alan K. Holden
>>>>
>>>>
>>>>
>>>>
>>
>>
>
> --
> Open BlueDragon Public Mailing List
> http://www.openbluedragon.org/ http://twitter.com/OpenBlueDragon
> mailing list - http://groups.google.com/group/openbd?hl=en
>
> !! save a network - please trim replies before posting !!
--
Open BlueDragon Public Mailing List
http://www.openbluedragon.org/ http://twitter.com/OpenBlueDragon
mailing list - http://groups.google.com/group/openbd?hl=en
!! save a network - please trim replies before posting !!