2015-11-02 34 views
0


我想在Eclipse中使用Maven创建一个简单的REST项目。使用weblogic服务器在Eclipse中使用Maven进行动态webapp项目

我创建了一个新的动态Web应用程序项目,并且右键点击 - >配置/转换Maven项目。

现在,如果我创建一个简单的index.html只有一个h1,它的作品。

因此,我创建了GreetingController.java:

package resources; 

import java.util.concurrent.atomic.AtomicLong; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestParam; 
import org.springframework.web.bind.annotation.RestController; 

@RestController 
public class GreetingController { 

    private static final String template = "Hello, %s!"; 
    private final AtomicLong counter = new AtomicLong(); 

    @RequestMapping("/greeting") 
    public Greeting greeting(@RequestParam(value="name", defaultValue="World") String name) { 
     return new Greeting(counter.incrementAndGet(), String.format(template, name)); 
    } 
} 

和模型:Greeting.java

package resources; 

public class Greeting { 

    private final long id; 
    private final String content; 

    public Greeting(long id, String content) { 
     this.id = id; 
     this.content = content; 
    } 

    public long getId() { 
     return id; 
    } 

    public String getContent() { 
     return content; 
    } 
} 

和pom.xml中:

<?xml version="1.0" encoding="UTF-8"?> 
<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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>org.springframework</groupId> 
    <artifactId>gs-rest-service</artifactId> 
    <version>0.1.0</version> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.2.7.RELEASE</version> 
    </parent> 

    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 
    </dependencies> 

    <properties> 
     <java.version>1.8</java.version> 
    </properties> 


    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
    </build> 

    <repositories> 
     <repository> 
      <id>spring-releases</id> 
      <url>https://repo.spring.io/libs-release</url> 
     </repository> 
    </repositories> 
    <pluginRepositories> 
     <pluginRepository> 
      <id>spring-releases</id> 
      <url>https://repo.spring.io/libs-release</url> 
     </pluginRepository> 
    </pluginRepositories> 
    <packaging>war</packaging> 
</project> 

如果我去http://localhost:7001/demo/greeting,它不起作用(404)。与http://localhost:7001/greeting同样的问题。
我认为问题在于服务器没有映射注释。

+0

什么是错误消息?日志里有什么? –

+0

没有在日志中。我有404 –

+0

你的应用程序的上下文根是什么?您不需要在RequestMapping值中。 –

回答

0

RequestMapping值不应包含上下文根。将值更改为

@RequestMapping("/greeting") 
+0

是的,那是最初的版本。 @RequestMapping(“/ demo/greeting”)是一个测试。在这两种情况下都不起作用。 –

+0

如果将该应用程序作为独立的Spring Boot应用程序运行,它会工作吗? –

+0

我按照教程:spring.io/guides/gs/rest-service创建了主类Application.java,但结果是相同的(404)。 –

相关问题