All,
I've constantly had problems getting my dependencies declared in ivy to be
published to the tomcat server.
Before you answer just add the JavaEE module dep, I have already done
that...
When I check my .metadata where the WebApp is being published, I don't see a
lib directory under WEB-INF.
I am using eclipse 3.5, MaxOSX, IVY 2.1.0 IVYDE 2.0.0 final.
Any thoughts? Any way to debug this?
I tried a few options:
ivy with all confs
Wiped our my tomcat, forced a republish... No effect.
To prove I didn't miss the JavaEE module dep:
Here's my .classpath
?xml version="1.0" encoding="UTF-8"?>
> <classpath>
> <classpathentry kind="src" output="target/classes"
> path="src/main/java"/>
> <classpathentry kind="src" path="src/test/resources"/>
> <classpathentry kind="src" output="target/test-classes"
> path="src/test/java"/>
> <classpathentry kind="src" path="src/main/antlr3"/>
> <classpathentry excluding="**" kind="src" output="target/classes"
> path="src/main/resources"/>
> <classpathentry kind="con"
> path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
> <classpathentry kind="con"
> path="org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER/?ivyXmlPath=ivy.xml&confs=*">
> <attributes>
> <attribute
> name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
> </attributes>
> </classpathentry>
> <classpathentry kind="output" path="target/classes"/>
> </classpath>
>
Tomcat is complaining about a spring web context class..
SEVERE: Error configuring application listener of class
org.springframework.web.context.ContextLoaderListener
java.lang.ClassNotFoundException:
org.springframework.web.context.ContextLoaderListener
However...
I do have spring-web-.... listed as a dep/jar in ivy.xml
And the jar does have the missing class...
package org.springframework.web.context;
>
> import javax.servlet.ServletContextEvent;
> import javax.servlet.ServletContextListener;
>
> /**
> * Bootstrap listener to start up and shut down Spring's root {...@link
> WebApplicationContext}.
> * Simply delegates to {...@link ContextLoader} as well as to {...@link
> ContextCleanupListener}.
> *
> * <p>This listener should be registered after
> * {...@link org.springframework.web.util.Log4jConfigListener}
> * in <code>web.xml</code>, if the latter is used.
> *
> * @author Juergen Hoeller
> * @since 17.02.2003
> * @see org.springframework.web.util.Log4jConfigListener
> */
> public class ContextLoaderListener extends ContextLoader implements
> ServletContextListener {
>
>
As I said, I do a few cleans, have wiped out the server. changed
workspace. Issue remains the same...
I never do see WEB-INF/lib get created under the appropriate directory under
.metadata in my workspace.
Any thoughts? I don't think I'm doing anything silly/obviously wrong...
I have had this flaky behaviour before where publish wouldn't always
publish... It did work eventually... [After cleans, Destroy servers,
change workspace]
Cheers,
Eric G.