On 23/02/2008, Kirk Knoernschild <[EMAIL PROTECTED]> wrote: > > I've managed to embed Jetty in Felix and get it to serve up static content > (thanx to some help from the ResourceServlet from PAX WEB). Now I'm onto > JSPs. But this is where it's getting pretty tricky. > > The only documentation I can find is on the Jetty site, and that details > how to embed Jetty in Equinox. I doubt the Jetty team has tested this > thoroughly, though. When I try to install the appropriate bundles, I run > into numerous problems: > > - The ant-1.6.5.jar isn't a valid bundle, and so I had to modify the > jsp-2.1.jar to include the ant-1.6.5.jar in the bundle, then add it to the > Bundle-Classpath. >
afaik you shouldn't need Ant during runtime, the only place I can see it used is in the JettyRunTask, which lets you start a Jetty app from Ant. usually when wrapping jars, I mark imported ant packages as optional - The real kicker though is that jsp-2.1.jar depends on package exports from > core-3.1.1.jar and core-3.1.1.jar requires equinox bundles. > yes, the Jetty jsp implementation uses the Eclipse JDT compiler which requires several other Eclipse bundles - but only org.eclipse.team.core is optional, so it won't work if you remove them all Eclipse bundles tend to use Require-Bundle rather than Import-Package (because of historical reasons) which unfortunately can make it harder to swap in alternate implementations of certain packages :( While it has those bundles listed as optionally required, core-3.1.1.jardoesn't resolve properly under felix. Since they were listed as optional, I > removed them from the Manifest.mf and repackaged. After that, it resolved > fine, but I get an NoClassDefFoundError when starting the bundle, as it > can't load the org.eclipse.core.runtime.PlugIn class. I suppose it's the > end of the road for hoping to embed Jetty in Felix until I can work with the > Jetty team to get this resolved. > not necessarily - as Alin suggested, take a look at Pax-Web-JSP which provides a Jasper based JSP implementation, and can run on most OSGi frameworks: http://wiki.ops4j.org/confluence/display/ops4j/Pax+Web+-+Jsp HTH Oh, I also had to add the following packages to the configuration, as Jetty > was looking for them as well when resolve jsp-api-2.1.jar: > com.sun.org.apache.xalan.internal.res; \ > com.sun.org.apache.xml.internal.utils; \ > com.sun.org.apache.xpath.internal; \ > com.sun.org.apache.xpath.internal.jaxp; \ > com.sun.org.apache.xpath.internal.objects; \ > > --kirk > On Feb 20, 2008, at Feb 20, 10:25 PM, Alin Dreghiciu wrote: > > I hope you don't mind asking about your use case? Why don't you use > one of the Http Services that are based on Jetty? > As for deploying static file Jetty has a resource servlet that is used > when nothing else matches a request. The problem with it is that is > quite tight coupled with a web application like structure. In most > simple way you can implement and register a servlet (as you say this > works) that will use the bundle that contains the static resource to > find and return the static file content. Of course you have to get > hold of that bundle and have a mapping mechanism between the request > and the actual file. > > You can take a look as it is done on Pax Web: > > https://scm.ops4j.org/repos/ops4j/projects/pax/web/service/src/main/java/org/ops4j/pax/web/service/internal/ResourceServlet.java > > Alin > > On Thu, Feb 21, 2008 at 5:31 AM, Kirk Knoernschild <[EMAIL PROTECTED]> > wrote: > > I've embedded Jetty in Felix, registered a servlet, and have that > > working. But I simply can't seem to figure out how to serve up a > > static html file (just a simple hello.html) where that html file is > > deployed in one of the bundles. Using the OSGi HttpService made this > > incredibly easy, so I can't help but think it's equally as easy with > > Jetty. But no luck so far. > > > Anyone have ideas for me? > > > thanx. > > > --kirk > > _______________________________________________ > > OSGi Developer Mail List > > [email protected] > > https://www2.osgi.org/mailman/listinfo/osgi-dev > > > _______________________________________________ > OSGi Developer Mail List > [email protected] > https://www2.osgi.org/mailman/listinfo/osgi-dev > > > > _______________________________________________ > OSGi Developer Mail List > [email protected] > https://www2.osgi.org/mailman/listinfo/osgi-dev > -- Cheers, Stuart
_______________________________________________ OSGi Developer Mail List [email protected] https://www2.osgi.org/mailman/listinfo/osgi-dev
