I have an issue on deploying my war file ,everything expect the web services are working fine The error log is given below
16:14:08,866 INFO [com.sun.jersey.api.core.PackagesResourceConfig] (MSC service thread 1-1) Scanning for root resource and provider classes in the packages:com.fut.ws
16:14:08,920 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/fut-wager]] (MSC service thread 1-1) StandardWrapper.Throwable:com.sun.jersey.core.spi.scanning.ScannerException: The URI scheme vfs of the URI vfs:/content/fut-wager.war/WEB-INF/classes/com/fut/ws/ is not supported. Package scanning deployment is not supported for such URIs.
Try using a different deployment mechanism such as explicitly declaring root resource and provider classes using an extension of javax.ws.rs.core.Application at com.sun.jersey.core.spi.scanning.PackageNamesScanner.scan(PackageNamesScanner.java:225) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.core.spi.scanning.PackageNamesScanner.scan(PackageNamesScanner.java:139) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:80) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.api.core.PackagesResourceConfig.init(PackagesResourceConfig.java:104) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:78) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:89) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:700) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:678) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:203) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:373) [jersey-bundle-1.9.1.jar:1.9.1] at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:556) [jersey-bundle-1.9.1.jar:1.9.1]
at javax.servlet.GenericServlet.init(GenericServlet.java:242) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final] at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3655) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3873) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_11]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_11]
at java.lang.Thread.run(Thread.java:619) [rt.jar:1.6.0_11]
16:14:08,974 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/fut-wager]] (MSC service thread 1-1) Servlet /fut-wager threw load() exception: com.sun.jersey.core.spi.scanning.ScannerException: The URI scheme vfs of the URI vfs:/content/fut-wager.war/WEB-INF/classes/com/fut/ws/ is not supported. Package scanning deployment is not supported for such URIs.
Try using a different deployment mechanism such as explicitly declaring root resource and provider classes using an extension of javax.ws.rs.core.Application
at com.sun.jersey.core.spi.scanning.PackageNamesScanner.scan(PackageNamesScanner.java:225) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.core.spi.scanning.PackageNamesScanner.scan(PackageNamesScanner.java:139) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:80) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.api.core.PackagesResourceConfig.init(PackagesResourceConfig.java:104) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:78) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:89) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:700) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:678) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:203) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:373) [jersey-bundle-1.9.1.jar:1.9.1]
at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:556) [jersey-bundle-1.9.1.jar:1.9.1]
at javax.servlet.GenericServlet.init(GenericServlet.java:242) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3655) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3873) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_11]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_11]
at java.lang.Thread.run(Thread.java:619) [rt.jar:1.6.0_11]
16:14:09,038 INFO [org.jboss.web] (MSC service thread 1-1) JBAS018210: Registering web context: /fut-wager
16:14:09,155 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS018559: Deployed "fut-wager.war"
16:15:00,034 INFO [com.fut.scheduler.MatchScheduler] (org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9) -- Match expiring scheduler execution started --
16:15:00,037 INFO [com.fut.ws.user.handler.MatchHandlerImpl] (org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9) --Inside match expiring service--
16:15:00,039 INFO [com.fut.dao.user.MatchDao] (org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9) --Inside match expiring dao--
16:15:00,313 INFO [com.fut.scheduler.MatchScheduler] (org.springframework.scheduling.quartz.SchedulerFactoryBean#0_Worker-9) -- Match expiring scheduler execution completed --
I got same error and solved using link provided by peeskillet. Here is example :
Web Service Application
package org.webservice.application;
import java.util.HashSet;
import java.util.Set;
import javax.ws.rs.core.Application;
import org.webservice.rs.HelloWorldService;
public class RSApplication extends Application
{
public Set<Class<?>> getClasses()
{
Set<Class<?>> s = new HashSet<Class<?>>();
s.add(HelloWorldService.class);
return s;
}
}
Resource
package org.webservice.rs;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
@Path("/hello")
public class HelloWorldService
{
@GET
public Response getMsg()
{
String output = "I M Jersey";
return Response.status(200).entity(output).build();
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>J2EEDemo</display-name>
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>org.webservice.application.RSApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
pom.xml entry for dependency
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
</dependencies>
Hit url : http://<HOST>:<PORT>/<CONTEXT>/rest/hello
I also got the same problem. below works for me try it.
Problem: com.sun.jersey.core.spi.scanning.ScannerException: The URI scheme vfs of the URI vfs
`
Solution: Need to change web.xml file
I have created
- package : com.rest.spring
- class : PaymentService
and I have provided those values inside <init-Parm>
in the web.xml
file. See below:
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet
</servlet-class>
<init-param>
**<param-name>
com.sun.jersey.config.property.packages
</param-name>
<param-value>com.rest.spring</param-value>**
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
After deploying, I got above error. So the only thing we need to change that is <init param>
see below:
**<param-name>
javax.ws.rs.core.Application
</param-name>
<param-value>com.rest.spring</param-value>**
enjoy...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With