2 回答

TA貢獻1848條經驗 獲得超10個贊
有兩種定義 JAX-RS servlet 的方法。
1)像你擁有的應用程序子類,你可以跳過 web.xml 配置,只添加應用程序注釋
@ApplicationPath("resources")
public class StammSolvaraJahrRestApplication extends Application
2) 使用 web.xml 配置
<servlet>
<display-name>JAX-RS Servlet</display-name>
<servlet-name>package.hierarchy.StammSolvaraJahrRestApplication</servlet-name>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>package.hierarchy.StammSolvaraJahrRestApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>JaxRSServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
如果您從最后一個跳過 servlet 映射,它將使用您@ApplicationPath指定的值,或者"/resources"如果前一個丟失。

TA貢獻1785條經驗 獲得超8個贊
問題就是它所說的。web.xml 中的這一行需要javax.servlet.Servlet
:
<servlet-class>backend.backendservice.StammSolvaraJahrRestApplication</servlet-class>
由于 anApplication
不是javax.servlet.Servlet
,因此在處理 XML 文件時會在運行時出現錯誤。
如果可以,我建議您從 Spring Boot 啟動應用程序開始。Spring Boot 為您處理所有這些。它甚至可以將 Tomcat 服務器嵌入到 jar 文件中,這樣您就可以像運行簡單的 Java 應用程序一樣運行您的服務器。這樣做可以讓您不必擔心在這里要處理什么。
添加回答
舉報