2016-11-02 6 views
1

これに基づいて非常に基本的なスプリングブートの例を構築しようとしましたが、spring-boot guideです。テストは正常に機能しますが、http://localhost/ei-bacon/test経由では、HTTP 404エラーが返されるため、再販品にアクセスすることはできません。スプリングブートの例:ブラウザからレシートにアクセスできない

HelloController.java:

@RestController 
public class HelloController { 

    @RequestMapping("/") 
    public String index() { 
     return "Ei Bacon welcomes you!"; 
    } 

    @RequestMapping("/test") 
    public String test() { 
     return "Ei Bacon welcomes you again!"; 
    } 
} 

インデックスファイル(/index.htmlが)と第1の要求のマッピングと衝突があってもよいです。しかし、2番目のテスト(/ test)はうまくいくはずですが、そうではありません。私は間違ったURLを入力しますか?

のcontext.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<Context path="/ei-bacon"/> 

Application.java:

package ch.ffhs.innt.eibacon.hello; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 

@SpringBootApplication 
public class Application { 

    public static void main(String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 
} 

答えて

0

@ResponseBodyであなたのメソッドに注釈を付けるようにしてください。現在、あなたは、例えば名前Ei Bacon welcomes you!Ei Bacon welcomes you again!

と意見をレンダリングしようとしている:

@ResponseBody 
@RequestMapping("/test") 
public String test() { 
    return "Ei Bacon welcomes you again!"; 
} 
+0

アプリケーションサーバーまたはスタンドアロンのTomcatでWARファイルとしてデプロイする場合

は、あなたのメインクラスは、ここでは、マニュアルに示すように、SpringBootServletInitializerを拡張し、方法configure(SpringApplicationBuilder)を実装する必要があります404. – 5im

+0

私はまた、Stringの代わりにオブジェクトを返そうとしましたので、ビューではないかもしれません。 @RequestMapping( "/ greeting") 公開挨拶()新しい挨拶(5、 "hellö"); } でも、404になります。コンテキストに問題がある可能性がありますか? – 5im

+2

'@ ResponseBody'を追加する必要はありません。 '@ RestController'はすべてのメソッドに自動的に追加します。 –

1

スタンドアロン春ブートアプリケーションとしてアプリケーションを実行して、アプリケーションサーバに正しいURLを、それを展開していない場合でしょうガイドに示されているようにhttp://localhost:8080/testまたは​​になります。また、その結果http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file

+0

私はそれをポート80のローカルTomcatサーバーとポート8080を実行しているリモートTomcatサーバーに配備しました。また、それぞれのポートで正しく表示されるindex.htmlもあります。上記のように私のRestletを除いて。私はrestletとhtmlファイルが同じ文脈とポートの下でアクセス可能でなければならないと思いますか? – 5im

+0

スタンドアロンのTwitterにデプロイする場合は、間違ったガイドを使用しています(たとえば、ガイドにのwarがpomファイルにありません)。これは、JARとしてパッケージ化され、スタンドアロンで実行されることを目的としています。 WARデプロイメントについては、https://spring.io/guides/gs/convert-jar-to-war/およびhttp://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howtoを使用してください。 -create-a-deployable-war-file – dunni

+0

ターゲットフォルダを削除するクリーンインストールを行うと、ビルドプロセスによってサーバにデプロイする新しいwarファイルが生成され、jarファイルは作成されません。 – 5im

関連する問題