Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-dev] Attempting to integrate quickstart in the build process

After a call with Simone (which I'm fortunate to have as JUG mate) I ended up with just adding an execution to the jetty maven plugin (see attached pom.xml portion)
I think this may be enough and it's not necessary to code any maven plugin.

However I was not able to start the webapp.
I had to add a context file (root.xml file attached), otherwise jetty still used AnnotationConfiguration. Once added, jetty failed with the attached exception, about missing taglibs jars Indeed there are no taglibs jars, because there are not JSPs (it's a jersey app, serving REST api only)

Any hint is appreciated

Regards

federico

Jan Bartel ha scritto il 11/05/2017 alle 11:50:
Great! I've created an issue to track this:
https://github.com/eclipse/jetty.project/issues/1542.

Jan
<project ...>

  ...

  <build>
    <plugins>
      <plugin>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <version>${jetty.version}</version>
        <configuration>
          <httpConnector>
            <port>8081</port>
          </httpConnector>
        </configuration>
        <executions>
          <execution>
            <phase>prepare-package</phase>
            <goals>
              <goal>effective-web-xml</goal>
            </goals>
            <configuration>
              <effectiveWebXml>${project.build.directory}/${project.build.finalName}/WEB-INF/quickstart-web.xml</effectiveWebXml>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
2017-05-11 15:53:17.966:INFO::main: Logging initialized @384ms to org.eclipse.jetty.util.log.StdErrLog
2017-05-11 15:53:18.138:INFO:oejs.SetUIDListener:main: Setting umask=02
2017-05-11 15:53:18.146:INFO:oejs.SetUIDListener:main: Opened ServerConnector@29774679{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
2017-05-11 15:53:18.147:INFO:oejs.SetUIDListener:main: Setting GID=101
2017-05-11 15:53:18.147:INFO:oejs.SetUIDListener:main: Setting UID=100
2017-05-11 15:53:18.149:INFO:oejs.Server:main: jetty-9.4.5.v20170502
2017-05-11 15:53:18.166:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:///var/lib/jetty/webapps/] at interval 1
2017-05-11 15:53:18.211:INFO:oejq.QuickStartWebApp:main: Quickstart Extract file:///var/lib/jetty/webapps/root.war to file:///var/lib/jetty/webapps/root
2017-05-11 15:53:18.581:WARN:oejw.WebAppContext:main: Failed startup of context o.e.j.q.QuickStartWebApp@551aa95a{/,file:///var/lib/jetty/webapps/root/,UNAVAILABLE}{/root}
java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.jetty.webapp.IterativeDescriptorProcessor.visit(IterativeDescriptorProcessor.java:83)
	at org.eclipse.jetty.webapp.IterativeDescriptorProcessor.process(IterativeDescriptorProcessor.java:70)
	at org.eclipse.jetty.webapp.MetaData.resolve(MetaData.java:408)
	at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1461)
	at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:785)
	at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
	at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:545)
	at org.eclipse.jetty.quickstart.QuickStartWebApp.doStart(QuickStartWebApp.java:201)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:41)
	at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:188)
	at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:502)
	at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:150)
	at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180)
	at org.eclipse.jetty.deploy.providers.WebAppProvider.fileAdded(WebAppProvider.java:453)
	at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64)
	at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:610)
	at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:529)
	at org.eclipse.jetty.util.Scanner.scan(Scanner.java:392)
	at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:313)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:150)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:564)
	at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:239)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
	at org.eclipse.jetty.server.Server.start(Server.java:452)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
	at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
	at org.eclipse.jetty.server.Server.doStart(Server.java:419)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1511)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1438)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1437)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.jetty.start.Main.invokeMain(Main.java:221)
	at org.eclipse.jetty.start.Main.start(Main.java:499)
	at org.eclipse.jetty.start.Main.main(Main.java:78)
Caused by: 
java.lang.IllegalArgumentException: TLD not found: jar:file:///home/jetty/.m2/repository/org/apache/taglibs/taglibs-standard-impl/1.2.5/taglibs-standard-impl-1.2.5.jar!/META-INF/x.tld
	at org.eclipse.jetty.quickstart.QuickStartDescriptorProcessor.visitContextParam(QuickStartDescriptorProcessor.java:201)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.jetty.webapp.IterativeDescriptorProcessor.visit(IterativeDescriptorProcessor.java:83)
	at org.eclipse.jetty.webapp.IterativeDescriptorProcessor.process(IterativeDescriptorProcessor.java:70)
	at org.eclipse.jetty.webapp.MetaData.resolve(MetaData.java:408)
	at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1461)
	at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:785)
	at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
	at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:545)
	at org.eclipse.jetty.quickstart.QuickStartWebApp.doStart(QuickStartWebApp.java:201)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:41)
	at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:188)
	at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:502)
	at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:150)
	at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180)
	at org.eclipse.jetty.deploy.providers.WebAppProvider.fileAdded(WebAppProvider.java:453)
	at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64)
	at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:610)
	at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:529)
	at org.eclipse.jetty.util.Scanner.scan(Scanner.java:392)
	at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:313)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:150)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:564)
	at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:239)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
	at org.eclipse.jetty.server.Server.start(Server.java:452)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
	at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
	at org.eclipse.jetty.server.Server.doStart(Server.java:419)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1511)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1438)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1437)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.jetty.start.Main.invokeMain(Main.java:221)
	at org.eclipse.jetty.start.Main.start(Main.java:499)
	at org.eclipse.jetty.start.Main.main(Main.java:78)
2017-05-11 15:53:18.591:INFO:oejs.AbstractConnector:main: Started ServerConnector@29774679{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
2017-05-11 15:53:18.592:INFO:oejs.Server:main: Started @1011ms

<Configure class="org.eclipse.jetty.quickstart.QuickStartWebApp">
  <Set name="autoPreconfigure">false</Set>
  <Set name="war"><Property name="jetty.webapps" default="."/>/root.war</Set>
</Configure>

Back to the top