2015-11-02 36 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)。 –

相關問題