java - 创建 Jersey 项目后重命名包

标签 java maven jersey

我有 3 个月前创建的 Glassfish Jersey 项目。我可以从本地主机请求它,但在将包从 org.busTracker.serverSide 重命名为“org.busTracker.trackingService”后,我遇到了让它工作的问题。我在按 F2 按钮后重命名了它,但我没有通过 chrome postmann 插件收到请求。

我还可以在哪里重命名才能使其正常工作?

重命名包后出现错误消息:

<!DOCTYPE html>
<html>
    <head>
        <title>Apache Tomcat/8.0.22 - Error report</title>
        <style type="text/css">H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}.line {height: 1px; background-color: #525D76; border: none;}</style>
    </head>
    <body>
        <h1>HTTP Status 404 - Not Found</h1>
        <div class="line"></div>
        <p>
            <b>type</b> Status report
        </p>
        <p>
            <b>message</b>
            <u>Not Found</u>
        </p>
        <p>
            <b>description</b>
            <u>The requested resource is not available.</u>
        </p>
        <hr class="line">
            <h3>Apache Tomcat/8.0.22</h3>
        </body>
    </html>

pom.xml 文件:

**pom.xml**

        <project xmlns="http://maven.apache.org/POM/4.0.0" 

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

        <modelVersion>4.0.0</modelVersion>

        <groupId>org.busTracker</groupId>
        <artifactId>serverSide</artifactId>
        <packaging>war</packaging>
        <version>0.0.1-SNAPSHOT</version>
        <name>serverSide</name>

        <build>
            <finalName>serverSide</finalName>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.5.1</version>
                    <inherited>true</inherited>
                    <configuration>
                        <source>1.7</source>
                        <target>1.7</target>
                    </configuration>
                </plugin>
            </plugins>
        </build>

        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>org.glassfish.jersey</groupId>
                    <artifactId>jersey-bom</artifactId>
                    <version>${jersey.version}</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>

        <dependencies>
            <dependency>
                <groupId>org.glassfish.jersey.containers</groupId>
                <artifactId>jersey-container-servlet-core</artifactId>
                <!-- use the following artifactId if you don't need servlet 2.x compatibility -->
                <!-- artifactId>jersey-container-servlet</artifactId -->
            </dependency>
            <dependency>
                <groupId>org.glassfish.jersey.media</groupId>
                <artifactId>jersey-media-json-jackson</artifactId>
                <version>2.16</version>
            </dependency>
            <!-- uncomment this to get JSON support <dependency> <groupId>org.glassfish.jersey.media</groupId> 
                <artifactId>jersey-media-moxy</artifactId> </dependency> -->
        </dependencies>
        <properties>
            <jersey.version>2.16</jersey.version>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    </project>

屏幕截图

enter image description here

最佳答案

查看您的 web.xml 文件。你会看到

<init-param>
    <param-name>jersey.config.server.provider.packages</param-name>
    <param-value>org.busTracker.serverSide</param-value>
</init-param>

此属性告诉 Jersey 扫描 org.busTracker.serverSide 包中的资源类。如果更改资源包,Jersey 将找不到它们。所以只需更改web.xml中的包

关于java - 创建 Jersey 项目后重命名包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33307115/

相关文章:

java - 与 Jackson 在 Jersey 中使用强类型进行 Hibernate 验证

java - Maven exec 未找到 Spring XML 文件

mysql - 在远程存储库中找到最新的 MySQL 驱动程序

git - 在 Heroku 上编辑 settings.xml 文件

arrays - 发送 json 数组并将其作为 List 类型的 jaxb jersey 参数接收

java - 将 DBObject 转换为 JSON

javascript - AEM/CQ 应用程序 : PDF generator based on filtered results

java - 带有 HSM keystore 的 CXF WS-Security

java - 在 fragment 之间传递数据

java - 将对象本身 (this) 传递给字段的方法是一种糟糕的方法吗?