Hi, using Heroku archetype jetty 11, It appeared the jetty configurations may be different when running mvn jetty:run compared to running embedded jetty using the main class. (below) That is to say I would need to add further programmatic configuration to the embedded jetty.
/** * This class launches the web application in an embedded Jetty container. * This is the entry point to your application. The Java * command that is used for launching should fire this main method. */ public class Main { public static void main(String[] args) throws Exception{ // The port that we should run on can be set into an environment variable // Look for that variable and default to 8080 if it isn't there. String webPort = System.getenv("PORT"); if (webPort == null || webPort.isEmpty()) { webPort = "8080"; } final Server server = new Server(Integer.valueOf(webPort)); final WebAppContext root = new WebAppContext(); root.setContextPath("/"); // Parent loader priority is a class loader setting that Jetty accepts. // By default Jetty will behave like most web containers in that it will // allow your application to replace non-server libraries that are part of the // container. Setting parent loader priority to true changes this behavior. // Read more here: http://wiki.eclipse.org/Jetty/Reference/Jetty_Classloading root.setParentLoaderPriority(true); final String webappDirLocation = "src/main/webapp/"; root.setDescriptor(webappDirLocation + "/WEB-INF/web.xml"); root.setResourceBase(webappDirLocation); server.setHandler(root); server.start(); server.join(); } } <http://www.backbutton.co.uk/> On Thu, 1 Apr 2021, 22:14 Greg Wilkins, <gr...@webtide.com> wrote: > Som, > > Configuration.ClassList is from Jetty-9 and is no longer needed in Jetty > 10 or 11. > The Configuraition mechanism generally requires less classpath > manipulation in 10 or 11, so I'd try just deleting that line. Do you know > why you are trying to obtain a classlist ? > > Perhaps look for the corresponding example in the jetty 11 source code? > > > On Tue, 30 Mar 2021 at 23:36, Som Lima <somplastic...@gmail.com> wrote: > >> I was hoping for some feedback on the error. >> >> Configuration.ClassList classlist = Configuration.ClassList >> .setServerDefault(server); >> >> Multiple markers at this line >> - ClassList cannot be resolved or is not a field >> - Configuration.ClassList cannot be resolved to a >> type >> >> I think was due to an incompatible server object. >> >> >> Whether my guess was correct or not ? >> >> >> >> On Fri, 26 Mar 2021, 23:49 Som Lima, <somplastic...@gmail.com> wrote: >> >>> Problem version >>> >>> <groupId>org.apache.maven.plugins</groupId> >>> <artifactId>maven-compiler-plugin</artifactId> >>> <version>3.8.0</version> >>> <inherited>true</inherited> >>> <configuration> >>> <source>11</source> >>> <target>11</target> >>> </configuration> >>> >>> >>> <jetty.version>11.0.1</jetty.version> >>> <http://www.backbutton.co.uk/> >>> >>> >>> On Fri, 26 Mar 2021, 23:45 Som Lima, <somplastic...@gmail.com> wrote: >>> >>>> Now >>>> <jetty.version>9.4.35.v20201120</jetty.version> >>>> on >>>> <maven.compiler.source>11</maven.compiler.source> >>>> <maven.compiler.target>11</maven.compiler.target> >>>> <http://www.backbutton.co.uk/> >>>> >>>> >>>> On Fri, 26 Mar 2021, 23:40 Joakim Erdfelt, <joa...@webtide.com> wrote: >>>> >>>>> What version of Jetty are you using? >>>>> >>>>> Joakim Erdfelt / joa...@webtide.com >>>>> >>>>> >>>>> On Fri, Mar 26, 2021 at 6:34 PM Som Lima <somplastic...@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi Thanks, >>>>>> >>>>>> I did try this Configuration.ClassList approach earlier but I was >>>>>> getting an error " >>>>>> Multiple markers at this line >>>>>> - ClassList cannot be resolved or is not a field >>>>>> - Configuration.ClassList cannot be resolved to a >>>>>> type >>>>>> >>>>>> I think was due to an incompatible server object. >>>>>> >>>>>> I am working in another project now >>>>>> this time I inserted the code , no eclipse IDE errors reported I >>>>>> guess the server object is compatible. >>>>>> My code looks like this but still I am missing JSP feature. Not sure >>>>>> the syntax for that. >>>>>> console error message" No JSP support. Check that JSP jars are in >>>>>> lib/jsp and that the JSP option has been specified to start." >>>>>> >>>>>> >>>>>> *I have these two dependencies in pom.xml* >>>>>> >>>>>> <dependency> >>>>>> <groupId>org.eclipse.jetty</groupId> >>>>>> <artifactId>apache-jsp</artifactId> >>>>>> <version>${jetty.version}</version> >>>>>> </dependency> >>>>>> <dependency> >>>>>> <groupId>jstl</groupId> >>>>>> <artifactId>jstl</artifactId> >>>>>> <version>1.2</version> >>>>>> </dependency> >>>>>> >>>>>> >>>>>> *This is what my code looks like but I don't think I have the jsp >>>>>> configuration in either variations* >>>>>> >>>>>> context.setBaseResource(Resource.newResource(webResourceBase)); >>>>>> context.setConfigurations(new Configuration[] >>>>>> { >>>>>> new AnnotationConfiguration(), >>>>>> new WebInfConfiguration(), >>>>>> new WebXmlConfiguration(), >>>>>> new MetaInfConfiguration(), >>>>>> new FragmentConfiguration(), >>>>>> new EnvConfiguration(), >>>>>> new PlusConfiguration(), >>>>>> new JettyWebXmlConfiguration() >>>>>> }); >>>>>> >>>>>> // === setup jetty plus == >>>>>> Configuration.ClassList classlist = Configuration.ClassList >>>>>> .setServerDefault(server); >>>>>> classlist.addAfter( >>>>>> "org.eclipse.jetty.webapp.FragmentConfiguration", >>>>>> "org.eclipse.jetty.plus.webapp.EnvConfiguration", >>>>>> "org.eclipse.jetty.plus.webapp.PlusConfiguration"); >>>>>> >>>>>> classlist.addBefore("org.eclipse.jetty.webapp.JettyWebXmlConfiguration", >>>>>> "org.eclipse.jetty.annotations.AnnotationConfiguration"); >>>>>> >>>>>> context.setContextPath("/"); >>>>>> >>>>>> On Fri, 26 Mar 2021, 22:19 Joakim Erdfelt, <joa...@webtide.com> >>>>>> wrote: >>>>>> >>>>>>> The order of that Configuration list is very important. >>>>>>> >>>>>>> It would be better to utilize the Server level component and just >>>>>>> add the missing pieces you need. >>>>>>> >>>>>>> See: >>>>>>> >>>>>>> - >>>>>>> >>>>>>> https://github.com/eclipse/jetty.project/blob/jetty-9.4.38.v20210224/examples/embedded/src/main/java/org/eclipse/jetty/embedded/LikeJettyXml.java#L168-L177 >>>>>>> - >>>>>>> >>>>>>> https://github.com/jetty-project/embedded-jetty-jsp/blob/4918be37b938fff9fada5910ca04c59d8969cc90/src/main/java/org/eclipse/jetty/demo/Main.java#L131-L136 >>>>>>> >>>>>>> >>>>>>> // === setup jetty plus == >>>>>>> Configuration.ClassList classlist = >>>>>>> Configuration.ClassList.setServerDefault(server); >>>>>>> >>>>>>> // Add JNDI support >>>>>>> classlist.addAfter( >>>>>>> "org.eclipse.jetty.webapp.FragmentConfiguration", >>>>>>> "org.eclipse.jetty.plus.webapp.EnvConfiguration", >>>>>>> "org.eclipse.jetty.plus.webapp.PlusConfiguration"); >>>>>>> >>>>>>> // Add Annotation Scanning Support >>>>>>> >>>>>>> classlist.addBefore("org.eclipse.jetty.webapp.JettyWebXmlConfiguration", >>>>>>> "org.eclipse.jetty.annotations.AnnotationConfiguration"); >>>>>>> >>>>>>> Leave the existing Configurations in place, don't overwrite/replace >>>>>>> the entire list like you are doing. >>>>>>> There is no need to configure the WebAppContext directly. >>>>>>> >>>>>>> Joakim Erdfelt / joa...@webtide.com >>>>>>> >>>>>>> >>>>>>> On Fri, Mar 26, 2021 at 4:42 PM Som Lima <somplastic...@gmail.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> There appears to be a number of ways to configure annotations, jsp >>>>>>>> support programmatically in the jetty embedded. i.e. >>>>>>>> Configuration.ClassList. >>>>>>>> >>>>>>>> I have gone for this implementation. >>>>>>>> Is there a one liner new class I can insert in this code to add >>>>>>>> for JSP functionality followed by corresponding libraries in the >>>>>>>> pom.xml ? >>>>>>>> >>>>>>>> context.setConfigurations(new Configuration[] >>>>>>>> { >>>>>>>> new AnnotationConfiguration(), >>>>>>>> new WebInfConfiguration(), >>>>>>>> new WebXmlConfiguration(), >>>>>>>> new MetaInfConfiguration(), >>>>>>>> new FragmentConfiguration(), >>>>>>>> new EnvConfiguration(), >>>>>>>> new PlusConfiguration(), >>>>>>>> new JettyWebXmlConfiguration() >>>>>>>> }); >>>>>>>> <http://www.backbutton.co.uk/> >>>>>>>> Regards >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> jetty-users mailing list >>>>>>>> jetty-users@eclipse.org >>>>>>>> To unsubscribe from this list, visit >>>>>>>> https://www.eclipse.org/mailman/listinfo/jetty-users >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> jetty-users mailing list >>>>>>> jetty-users@eclipse.org >>>>>>> To unsubscribe from this list, visit >>>>>>> https://www.eclipse.org/mailman/listinfo/jetty-users >>>>>>> >>>>>> _______________________________________________ >>>>>> jetty-users mailing list >>>>>> jetty-users@eclipse.org >>>>>> To unsubscribe from this list, visit >>>>>> https://www.eclipse.org/mailman/listinfo/jetty-users >>>>>> >>>>> _______________________________________________ >>>>> jetty-users mailing list >>>>> jetty-users@eclipse.org >>>>> To unsubscribe from this list, visit >>>>> https://www.eclipse.org/mailman/listinfo/jetty-users >>>>> >>>> _______________________________________________ >> jetty-users mailing list >> jetty-users@eclipse.org >> To unsubscribe from this list, visit >> https://www.eclipse.org/mailman/listinfo/jetty-users >> > > > -- > Greg Wilkins <gr...@webtide.com> CTO http://webtide.com > _______________________________________________ > jetty-users mailing list > jetty-users@eclipse.org > To unsubscribe from this list, visit > https://www.eclipse.org/mailman/listinfo/jetty-users >
_______________________________________________ jetty-users mailing list jetty-users@eclipse.org To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jetty-users