I follow the tutorial to find out the REST api. Below is my GET annotation code and using the Weblogic server to deploy my application. For some reason, it shows the following error:
HTTP method GET is not supported by this URL
Sample.java
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
@Path("/v1")
public class V1_status {
@GET
@Produces(MediaType.TEXT_HTML)
public String returnTitle(){
return "<p> Yess </p>";
}
}
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>com.glasschecker.rest</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.glasschecker.rest</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey REST Service</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
</web-app>
This is a tutorial:
https://www.youtube.com/watch?v=4DY46f-LZ0M&list=PLu47tUtKqNlwfR- nqjiWUaIWOYEi9FyW0 & index = 2
I use the following URL http: // localhost: 7001 / com.glasschecker.rest / api / v1 the URL pattern is added to the Servlet.
When I try to access http: // localhost: 7001 / com.glasschecker.rest , it correctly displays the index.html file (the first file in my web.xml). I am sure something is in my file.
. java :
com.glasschecker.rest.status
, :
weblogic.application.ModuleException: weblogic.management.DeploymentException: [HTTP:101170]The servlet org.foo.rest.MyApplication is referenced in servlet-mapping /api but not defined in web.xml.
at weblogic.application.internal.ExtensibleModuleWrapper.start(ExtensibleModuleWrapper.java:140)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:237)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:232)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:45)
Truncated. see log file for complete stacktrace
Caused By: weblogic.management.DeploymentException: [HTTP:101170]The servlet org.foo.rest.MyApplication is referenced in servlet-mapping /api but not defined in web.xml.
at weblogic.servlet.internal.WebAppServletContext.verifyServletMappings(WebAppServletContext.java:1566)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3066)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1830)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:875)
at weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360)