Perfect, now it's working. Thanks a lot!
-----Ursprüngliche Nachricht----- Von: "Jesse McConnell" <[email protected]> Gesendet: 07.07.2011 15:46:10 An: "JETTY user mailing list" <[email protected]> Betreff: Re: [jetty-users] Custom SessionHandler in Jetty >It needs to be a dependency of the _plugin_ not the project > ><plugin> > <artifactId>jetty-maven-plugin</artifactId> > <dependencies> > <dependency> > ...your stuff > >etc... > >cheers, >jesse > >-- >jesse mcconnell >[email protected] > > > >On Thu, Jul 7, 2011 at 03:42, Christian Thum <[email protected]> wrote: >> Thank you for the quick response. Your guessing right, the session handler >> is located within the project. >> >> I followed your advice and exported the custom sessionhandler to a jar file >> ("jar -cf myhandler-0.1-jar [Class]"). Then I manually installed the jar to >> my local repository and added it as a dependency to the project. I verfied >> that the dependency was found and loaded by turning on the maven debug >> options. Still, I'm getting the same error. Here's the full stacke trace: >> >> >> Failed to execute goal >> org.mortbay.jetty:jetty-maven-plugin:7.3.1.v20110307:run-exploded >> (default-cli) on project : Unable to parse configuration of mojo >> org.mortbay.jetty:jetty-maven-plugin:7.3.1.v20110307:run-exploded for >> parameter sessionHandler: ClassNotFoundException: Class name which was >> explicitly given in configuration using 'implementation' attribute: >> 'net.synchronite.jetty.SessionHandler' cannot be loaded -> [Help 1] >> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute >> goal org.mortbay.jetty:jetty-maven-plugin:7.3.1.v20110307:run-exploded >> (default-cli) on project : Unable to parse configuration of mojo >> org.mortbay.jetty:jetty-maven-plugin:7.3.1.v20110307:run-exploded for >> parameter sessionHandler: ClassNotFoundException: Class name which was >> explicitly given in configuration using 'implementation' attribute: >> 'net.synchronite.jetty.SessionHandler' cannot be loaded >> at >> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:221) >> at >> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) >> at >> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) >> at >> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) >> at >> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) >> at >> org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) >> at >> org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) >> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319) >> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) >> at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) >> at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) >> at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> at >> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) >> at >> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) >> at >> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) >> at >> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) >> Caused by: org.apache.maven.plugin.PluginConfigurationException: Unable to >> parse configuration of mojo >> org.mortbay.jetty:jetty-maven-plugin:7.3.1.v20110307:run-exploded for >> parameter sessionHandler: ClassNotFoundException: Class name which was >> explicitly given in configuration using 'implementation' attribute: >> 'net.synchronite.jetty.SessionHandler' cannot be loaded >> at >> org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields(DefaultMavenPluginManager.java:597) >> at >> org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:529) >> at >> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:92) >> at >> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) >> ... 19 more >> Caused by: >> org.codehaus.plexus.component.configurator.ComponentConfigurationException: >> ClassNotFoundException: Class name which was explicitly given in >> configuration using 'implementation' attribute: >> 'net.synchronite.jetty.SessionHandler' cannot be loaded >> at >> org.codehaus.plexus.component.configurator.converters.AbstractConfigurationConverter.getClassForImplementationHint(AbstractConfigurationConverter.java:70) >> at >> org.codehaus.plexus.component.configurator.converters.composite.ObjectWithFieldsConverter.fromConfiguration(ObjectWithFieldsConverter.java:80) >> at >> org.codehaus.plexus.component.configurator.converters.ComponentValueSetter.configure(ComponentValueSetter.java:278) >> at >> org.codehaus.plexus.component.configurator.converters.composite.ObjectWithFieldsConverter.processConfiguration(ObjectWithFieldsConverter.java:151) >> at >> org.codehaus.plexus.component.configurator.converters.composite.ObjectWithFieldsConverter.fromConfiguration(ObjectWithFieldsConverter.java:89) >> at >> org.codehaus.plexus.component.configurator.converters.ComponentValueSetter.configure(ComponentValueSetter.java:331) >> at >> org.codehaus.plexus.component.configurator.converters.composite.ObjectWithFieldsConverter.processConfiguration(ObjectWithFieldsConverter.java:151) >> at >> org.codehaus.plexus.component.configurator.BasicComponentConfigurator.configureComponent(BasicComponentConfigurator.java:56) >> at >> org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields(DefaultMavenPluginManager.java:567) >> ... 22 more >> Caused by: java.lang.ClassNotFoundException: >> net.synchronite.jetty.SessionHandler >> at >> org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) >> at >> org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) >> at >> org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) >> at >> org.codehaus.plexus.component.configurator.converters.AbstractConfigurationConverter.getClassForImplementationHint(AbstractConfigurationConverter.java:61) >> ... 30 more >> >> >> >> The relevant secrtion in the pom looks like this: >> >> <webAppConfig> >> <contextPath>/</contextPath> >> <extraClasspath>D:\myhandler-0.1.jar</extraClasspath> >> <sessionHandler implementation="net.synchronite.jetty.SessionHandler"> >> <sessionManager >> implementation="net.synchronite.jetty.SessionManager"> >> </sessionManager> >> </sessionHandler> >> </webAppConfig> >> >> >> Is there any other way of registering my own session handler in Jetty 7.3.1? >> Maybe using a context listener? >> >> Thanks for your help! >> >> >> >> >> -----Ursprüngliche Nachricht----- >> Von: "Jesse McConnell" <[email protected]> >> Gesendet: 06.07.2011 22:43:53 >> An: "JETTY user mailing list" <[email protected]> >> Betreff: Re: [jetty-users] Custom SessionHandler in Jetty >> >>>Where is the session handler located? I suspect you need to register >>>it as a dependency of the jetty-maven-plugin (since that looks to be >>>your usage scenario here). That would involve using <dependency> tags >>>in the plugin decl. >>> >>>But this is likely a pretty typical classloader issue. I suspect your >>>trying to use a class that is in the project itself that your loading >>>up the jetty-maven-plugin from and its just not exposed to the plugin >>>classloader like that. >>> >>>cheers, >>>jesse >>> >>>-- >>>jesse mcconnell >>>[email protected] >>> >>> >>> >>>On Wed, Jul 6, 2011 at 15:28, Christian2M <[email protected]> wrote: >>>> I'm having a problem trying to register a self-implemented SessionHandler >>>> for my Web Application. I have tried adding the session handler two ways >>>> without success: >>>> >>>> 1) Modifying the pom.xml >>>> >>>> <extraClasspath>${basedir}/target/mywebapp/WEB-INF/classes/</extraClasspath> >>>> <sessionHandler implementation="com.example.session.MySessionHandler"> >>>> <sessionManager implementation="com.example.session.MySessionManager"> >>>> </sessionManager> >>>> </sessionHandler> >>>> >>>> 2) Modifying the jetty.xml >>>> >>>> <Set name="extraClasspath">WEB-INF/classes/</Set> >>>> <Set name="setSessionHandler"> >>>> <New class="org.eclipse.jetty.server.session.SessionHandler"> >>>> <Arg> >>>> <New class="net.synchronite.proxy.SynchroniteSessionManager" >>>> /> >>>> </Arg> >>>> </New> >>>> </Set> >>>> >>>> In both cases I get a ClassNotFoundException (see below). What am I >>>> missing? >>>> >>>> ... >>>> Caused by: java.lang.ClassNotFoundException: >>>> net.synchronite.proxy.SynchroniteSessionHandler >>>> at >>>> org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFir >>>> stStrategy.java:50) >>>> at >>>> org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:2 >>>> 44) >>>> at >>>> org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:2 >>>> 30) >>>> at >>>> org.codehaus.plexus.component.configurator.converters.AbstractConfigurationC >>>> onverter.getClassForImplementationHint(AbstractConfigurationConverter.java:6 >>>> 1) >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> jetty-users mailing list >>>> [email protected] >>>> https://dev.eclipse.org/mailman/listinfo/jetty-users >>>> >>>_______________________________________________ >>>jetty-users mailing list >>>[email protected] >>>https://dev.eclipse.org/mailman/listinfo/jetty-users >> >> >> ___________________________________________________________ >> Schon gehört? WEB.DE hat einen genialen Phishing-Filter in die >> Toolbar eingebaut! http://produkte.web.de/go/toolbar >> _______________________________________________ >> jetty-users mailing list >> [email protected] >> https://dev.eclipse.org/mailman/listinfo/jetty-users >> >_______________________________________________ >jetty-users mailing list >[email protected] >https://dev.eclipse.org/mailman/listinfo/jetty-users ___________________________________________________________ Schon gehört? WEB.DE hat einen genialen Phishing-Filter in die Toolbar eingebaut! http://produkte.web.de/go/toolbar _______________________________________________ jetty-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/jetty-users
