Web服务 - Java中RESTful Web服务的配置JSON

时间:2014-12-09 06:44:55

标签: java json web-services rest maven

我是webservices的新手,我试图创建一个调用JSON数据的restful webservice。搜索后,我想我可以使用maven创建一个Web服务,并使用此link创建一个Web服务。我安装了maven并尝试重复链接中给出的相同步骤。但是当我运行应用程序时,我得到以下错误。

“无法在项目printer-status-webapp上执行目标:无法解决项目com.example的依赖关系:printer-status-webapp:jar:1.0-SNAPSHOT:找不到工件com.sun.jersey: jersey-grizzly:jar:1.0 in glassfish.java.net(http://download.java.net/maven/glassfish)“

我在我的机器上运行了tomcat。我没有安装glassfish。是否无法使用tomcat本身运行应用程序。

任何人都帮我解决这个错误。

另外,使用json数据创建restful webservices的任何简单示例也会有所帮助

请找到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>com.example</groupId>
<artifactId>printer-status-webapp</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>printer-status-webapp</name>
<dependencies>
     <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-grizzly</artifactId>
        <version>${jersey-version}</version>
    </dependency>

     <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-json</artifactId>
        <version>${jersey-version}</version>
    </dependency>

    <!-- uncomment this to get Fastinfoset support:
     <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-fastinfoset</artifactId>
        <version>${jersey-version}</version>
    </dependency>
    -->
    <!-- uncomment this to get ATOM support:
     <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-atom</artifactId>
        <version>${jersey-version}</version>
    </dependency>
    -->
    <!-- uncomment this to get multipart MIME types support:
     <dependency>
        <groupId>com.sun.jersey.contribs</groupId>
        <artifactId>jersey-multipart</artifactId>
        <version>${jersey-version}</version>
    </dependency>
    -->
       <dependency>
        <groupId>com.sun.grizzly</groupId>
        <artifactId>grizzly-servlet-webserver</artifactId>
        <version>1.9.31</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.8.2</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-client</artifactId>
        <version>${jersey-version}</version>
        <scope>test</scope>
    </dependency>
</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <inherited>true</inherited>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>tomcat-maven-plugin</artifactId>
        <configuration>
        <url>http://172.16.109.209:8080/manager</url>
        <server>mytomcat</server>
        <path>/mywebapp</path>
        </configuration>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.1</version>
            <executions>
                <execution>
                    <goals>
                        <goal>java</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <mainClass>com.example.Main</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>
<properties>
    <jersey-version>1.0</jersey-version>
</properties>
 <!-- <repositories>
   <repository>
        <id>glassfish.java.net</id>
        <name>GlassFish Maven Repository</name>
        <url>http://download.java.net/maven/glassfish</url>
        <layout>default</layout>
    </repository> 
    <repository>
        <id>m2.java.net</id>
        <name>Java.net Maven 2 Repository</name>
        <url>http://download.java.net/maven/2</url>
        <layout>default</layout> 
    </repository> 
</repositories>  -->

谢谢

2 个答案:

答案 0 :(得分:1)

错误基本上告诉你maven正在寻找依赖&#34; com.sun.jersey:jersey-grizzly:jar:1.0&#34;在存储库&#34; http://download.java.net/maven/glassfish&#34;那是你的pom.xml,它无法找到它。

您是否尝试使用Maven Central Repository?

答案 1 :(得分:0)

添加Maven中央存储库:

<repositories>
  <repository>
    <id>central</id>
    <name>Maven Repository Switchboard</name>
    <layout>default</layout>
    <url>http://repo1.maven.org/maven2</url>
    <snapshots>
      <enabled>false</enabled>
    </snapshots>
  </repository>
</repositories>