Benson,
That might work!
I thought of something else, kind of a variation on your theme.
When you create a Tomcat server in Eclipse, Eclipse also creates a Tomcat
Server project. If this project is similar to other Eclipse projects then
the project preferences should have a way for me to add lib's (typically for
a code project this is called the build path).
Maybe I'll try both!
Mike
----- Original Message -----
From: "Benson Margulies" <[email protected]>
To: <[email protected]>
Sent: Sunday, November 14, 2010 1:58 PM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
Michael,
My cheap trick applies to Eclipse. When you configure WTP, you give it
a tomcat installation directory to work with. If you drop CXF into the
*system* classpath of that tomcat (the 'lib' directory), I think it
will circumvent the WTP problem.
-benson
On Sun, Nov 14, 2010 at 1:48 PM, Michael <[email protected]> wrote:
Benson,
You'll be happy to know that keeping Eclipse out of the picture works just
fine!
I deployed my web service .war to Tomcat, started Tomcat from the startup
batch file, created an executable jar for my client and launched the
client
from the command line.
Everything worked like a charm!
Now I just need to solve my Eclipse problem. I posted my problem on their
WTP forum, 40 views but no solutions.
I checked all my Eclipse config and pref settings, including the CXF
facet.
I'll check them again, just in case.
Thanks for helping.
Mike
----- Original Message ----- From: "Benson Margulies"
<[email protected]>
To: <[email protected]>
Sent: Saturday, November 13, 2010 4:58 PM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
Hang on, back up ..... If you're using the Eclipse tools for web apps,
they're pretty cranky, in my experience. You're dealing with this
'facet' stuff from eclipse. There may be something special you need to
do make it actually use CXF in the launch classpath.
Did you let eclipse pick your project layout, or are you trying to use
maven?
One cheap trick is to add the CXF jars to your tomcat installation
system lib directory.
On Sat, Nov 13, 2010 at 4:52 PM, Michael <[email protected]>
wrote:
Yes, but nice try,
Anyway, it does not matter because when running with the internal Tomcat
server Eclipse does not use the exported .war file. I believe (but i'm
not
100% sure of this) that it uses the web module structure in the Eclipse
project file somehow, when it runs the web module on the internal Tomcat
server. And BTW, the WEB-INF\lib in the Eclipse project is empty!!!
Unless it generates a .war under the covers and deploys it to the
internal
Tomcat server, but I've not come across anything that states that. But
that
doesn't mean that isn't hapenning. Then again if it was I don't think
we'd
be seeing this problem.
Tomorrow I think I'll try deploying the .war to the external Tomcat
instance, like I said earlier today, and see what happens.
----- Original Message ----- From: "Benson Margulies"
<[email protected]>
To: <[email protected]>
Sent: Saturday, November 13, 2010 2:27 PM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
To ask the ultimate silly question: you do have the big jar in
WEB-INF/lib, and not someplace else, in your WAR file?
On Sat, Nov 13, 2010 at 1:53 PM, Michael <[email protected]>
wrote:
No prob. CXF 2.2.10
The big cxf-2.2.10.jar is in the class path for my Eclipse project (I
put
it
there), and in the .war I exported from my Eclipse project.
But very few of the CXF .jar's are showing for the web module for my
project
under the Eclipse internal Tomcat server (in the servers view). And
cxf-2.2.10.jar is one of the no-shows.
I have posted a problem to the Eclipse WTP forum. Have not heard
anything
yet.
Thanks for your help Benson!!!
----- Original Message ----- From: "Benson Margulies"
<[email protected]>
To: <[email protected]>
Sent: Saturday, November 13, 2010 1:02 PM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
Sorry to keep starting over, but what version of CXF?
For 2.3, cxf-rt-transports-http-2.3.0.jar, in the modules dir. Most
folks just use the big cxf-2.3.0.jar file in lib, it's in there too.
On Sat, Nov 13, 2010 at 9:37 AM, Michael <[email protected]>
wrote:
The .war I built from my Eclipse project has every one of the .jars
listed
in WHICH_JARS, except jdom.jar which looks like it's only needed for
Aegis
support.
So what are the .jars Daniel is referring to?
And what CXF .jar am I missing that's causing:
exception java.lang.ClassNotFoundException:
org.apache.cxf.transport.servlet.CXFServlet
when I start up Tomcat?
I think the problem might be that I'm running Tomcat inside Eclipse and
all
the CXF JAR's are not available on the class path for the internal
Tomcat
instance.
I have not tried deploying the WAR I built to my external Tomcat
instance
and accessing the web service from there. I think that might be my next
step. I think that shoud work since the WAR appears to have all the CXF
JAR's as stated above.
But I really want to be able to do all my dev and testing from Eclipse
and
only deploy when I've got everything the way I want it. I might have to
post a problem on the Eclipse site.
----- Original Message ----- From: "Benson Margulies"
<[email protected]>
To: <[email protected]>
Sent: Saturday, November 13, 2010 8:34 AM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
Compare lib/WHICH_JARS to what you've got from eclipse. Or build one
of the war-packaged samples and look inside.
On Sat, Nov 13, 2010 at 7:53 AM, Michael <[email protected]>
wrote:
Daniel,
Since this last post I've tried something else. I built a .war file
from
Eclipse and then took a look at the CXF jars it exported to it. As
expected
it exported all the CXF jars for my projects build path in Eclipse.
But in the .war I built I did not see anything that looked like
"cxf-rt-transport-http jar or the larger cxf bundle jar". Can you tell
me
what the specific names of these jars are? Should they be in
[CXF_HOME]\lib? If not where do I get them?
Thanks,
Mike
----- Original Message ----- From: "Michael"
<[email protected]>
To: <[email protected]>
Sent: Friday, November 12, 2010 7:33 PM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
Daniel,
Thanks for your reply.
In Eclipse I have the CXF proferences set to export runtime libraries
to
WEB-INF\lib at deployment.
Now I'm running the service from an instance of Tomcat within
Eclipse.
My
internal Tomcat instance shows the following CXF files included in
the
web
module deployed to the internal Tomcat server instance:
ant-1.8.1.jar
ant-launcher-1.8.1.jar
jaxb-xjc-2.1.13.jar
js-1.7R.1.jar
serializer-2.7.1.jar
xalan-2.7.1.jar
xml-resolver-1.2.jar
My Eclipse buildpath for my project contains the CXF library which
has
the
JAR's listed above but not the CXF JAR's you mention.
Is the CXF bundle JAR cxf-2.2.10.jar?
Why is the cxf-rt-transport-http JAR not included in my Apache CXF
Library
in Eclipse?
Is there any good, step-by-step guide for how to use
Eclipse\Tomcat\CXF,
all integrated in the Eclipse WTP?
----- Original Message ----- From: "Daniel Kulp" <[email protected]>
To: <[email protected]>
Cc: "Michael" <[email protected]>
Sent: Friday, November 12, 2010 3:29 PM
Subject: Re: CXFServlet Errors Starting Tomcat In Eclipse
On Thursday 11 November 2010 5:31:30 pm Michael wrote:
Although I been working with web services for quite some time this
is
my
first attempt to create web services using CXF. I'm starting with a
very
simple service (Java first) and using a simple standalone Jave
console
app
as the client.
My development environment is JDK 1.6, Java EE 6, Eclipse Helios
(With
WTP)
and Tomcat 6.
When I start my Tomcat server in Eclipse I get the following
errors:
Nov 11, 2010 5:19:02 PM org.apache.catalina.core.ApplicationContext
log
SEVERE: Error loading WebappClassLoader
context: /SimpleCXFWebServiceForTomcat
delegate: false
repositories:
----------> Parent Classloader:
org.apache.catalina.loader.standardclassloa...@1004901
org.apache.cxf.transport.servlet.CXFServlet
java.lang.ClassNotFoundException:
org.apache.cxf.transport.servlet.CXFServlet
Nov 11, 2010 5:19:02 PM org.apache.catalina.core.StandardContext
loadOnStartup SEVERE: Servlet /SimpleCXFWebServiceForTomcat threw
load()
exception java.lang.ClassNotFoundException:
org.apache.cxf.transport.servlet.CXFServlet
Can anyone explain and tell me how to correct?
Well, the "war" project or whatever would need to have all the
required
CXF
deps. In this case, it would definitely need the
cxf-rt-transport-http
jar
(or the larger cxf bundle jar)
--
Daniel Kulp
[email protected]
http://dankulp.com/blog