I'm using enRoute and targeting Karaf.
On 16/11/2016 11:59, David Daniel wrote:
It is really going to depend on your library and bundles you use. I
used to do it in my activator like
import java.util.Dictionary;
import org.ops4j.pax.web.extender.whiteboard.ResourceMapping;
import
org.ops4j.pax.web.extender.whiteboard.runtime.DefaultResourceMapping;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
*
* @author ddaniel
*/
public class Activator implements BundleActivator {
/**
* Logger.
*/
private static final Logger LOG =
LoggerFactory.getLogger(Activator.class);
private ServiceRegistration<ResourceMapping> resourcesReg;
public void start(final BundleContext bundleContext) throws Exception {
Dictionary<String, String> props;
// Registering resource mappings as service
DefaultResourceMapping resourceMapping = new DefaultResourceMapping();
resourceMapping.setAlias("/webIngest");
resourceMapping.setPath("/content");
resourcesReg = bundleContext.registerService(ResourceMapping.class,
resourceMapping, null);
}
public void stop(BundleContext bundleContext) throws Exception {
if (resourcesReg != null) {
resourcesReg.unregister();
resourcesReg = null;
}
}
}
I have since moved to using the enroute web simple provider
https://github.com/osgi/osgi.enroute.bundles/tree/master/osgi.enroute.web.simple.provider
You will likely need to pick a framework karaf/enroute/amdatu and
follow their documentation. Without a clear framework things become
more difficult and you have to know your bundles well.
On Wed, Nov 16, 2016 at 6:42 AM, Tim Ward <t...@telensa.com
<mailto:t...@telensa.com>> wrote:
Basically I was just trying to understand the documentation I
quoted; I'd been led there whilst looking for some way to serve a
static resource from a less complicated URL. I have not found any
documentation of how to actually use ConditionalServlet - your
response below tells me that I can do whatever I like, but doesn't
give enough information for me to be able to work out *how* to do it.
On 15/11/2016 21:45, David Leangen wrote:
Hi Tim,
You just need a class that implements ConditionalServlet, and
register it (for example) using DS.
By following the ConditionalServlet algorithm, you should be able
to accomplish anything you need to do.
It may be easier if you have more specific questions. What are
you trying to accomplish?
Cheers,
=David
On Nov 16, 2016, at 12:52 AM, Tim Ward <t...@telensa.com
<mailto:t...@telensa.com>> wrote:
In
https://github.com/osgi/osgi.enroute.bundles/tree/master/osgi.enroute.web.simple.provider
<https://github.com/osgi/osgi.enroute.bundles/tree/master/osgi.enroute.web.simple.provider>
it says
"By adding, removing, and reordering |ConditionalServlet|s, you
can gain unlimited control of what happens on the root path."
How, exactly? - what does one actually *do* to "add" (eg) a
ConditionalServlet?
--
Tim Ward
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org>
https://mail.osgi.org/mailman/listinfo/osgi-dev
<https://mail.osgi.org/mailman/listinfo/osgi-dev>
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org>
https://mail.osgi.org/mailman/listinfo/osgi-dev
<https://mail.osgi.org/mailman/listinfo/osgi-dev>
--
Tim Ward
_______________________________________________ OSGi Developer
Mail List osgi-dev@mail.osgi.org <mailto:osgi-dev@mail.osgi.org>
https://mail.osgi.org/mailman/listinfo/osgi-dev
<https://mail.osgi.org/mailman/listinfo/osgi-dev>
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org
https://mail.osgi.org/mailman/listinfo/osgi-dev
--
Tim Ward
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org
https://mail.osgi.org/mailman/listinfo/osgi-dev