I solved this issue by modifying start Level of bundles in config.ini
So my monitor bundle's start level is 4, and others' start level is 2,
OSGI framework will start others bundles before my bundle.
Hope it helps.
===============config.ini==========================
osgi.bundles=\
plugins/javax.servlet_2.5.0.v200910301333.jar_at_2:start,\
plugins/org.eclipse.osgi.services_3.2.100.v20100503.jar_at_2:start,\
plugins/org.mortbay.jetty.server_6.1.23.v201004211559.jar_at_2:start,\
plugins/org.eclipse.equinox.http.jetty_2.0.0.v20100503.jar_at_2:start,\
plugins/org.eclipse.equinox.http.servlet_1.1.0.v20100503.jar_at_2:start,\
plugins/org.apache.commons.logging_1.0.4.v201005080501.jar_at_2:start,\
plugins/org.mortbay.jetty.util_6.1.23.v201004211559.jar_at_2:start,\
plugins/org.apache.log4j_1.2.13.v200903072027.jar_at_2:start,\
plugins/config.log4j_1.0.0.jar_at_2,\
plugins/com.ibm.mq.pcf_1.0.0.jar_at_2:start,\
plugins/com.ibm.mq_1.0.0.jar_at_2:start,\
plugins/javax.ws.rs.jsr311-api.jar_at_2:start,\
plugins/com.sun.jersey.jersey-core-1.3-SNAPSHOT.jar_at_2:start,\
plugins/com.sun.jersey.jersey-server-1.3-SNAPSHOT.jar_at_2:start,\
plugins/com.fxinnovation.mqmonitor_1.0.0.jar_at_4:start
eclipse.ignoreApp=true
osgi.noShutdown=true
osgi.bundles.defaultStartLevel=4
--
View this message in context: http://jersey.576304.n2.nabble.com/Jersey-in-Equinox3-7-ContainerException-No-WebApplication-provider-is-present-tp5656365p5663252.html
Sent from the Jersey mailing list archive at Nabble.com.