1

カスタム ビューとコントローラーを非常に基本的な roo 生成プロジェクトに追加しようとしています。

Spring Tool Suite (STS、Spring 3.1) を使用して、新しいプロジェクトを作成し、次の 3 つのコマンドを実行しました。

    persistence setup --database MYSQL --provider HIBERNATE --userName *** --password *** --databaseName ***
    entity jpa --class com.demoing.domain.Customer --testAutomatically 
    field string --fieldName firstName --notNull 
    field string --fieldName lastName --notNull 
    controller scaffold --class com.demoing.controller.CustomerController --entity com.demoing.domain.Customer

これらを生成した後、アプリケーションをサーバー上で開始できます。

ただし、新しい .jspx ファイル (home.jspx など) を追加すると、特定のリンクに移動すると、アプリケーションで「リソースが見つかりません」と表示されます。src/main/webapp/WEB-INF/views/home.jspx の他のビューの横にある jspx に追加しました

ビューの定義を views.xml に追加し、以下に示すようにコントローラーを手動で作成しました。

package com.demoing.domain;

import javax.servlet.http.HttpServletRequest;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@Scope(value = "session")
@RequestMapping("/home")
public class HomeController {
    @RequestMapping(produces="text/html")
    public String home(HttpServletRequest request, Model uiModel ){

        return "home";
    }
}

ビューの定義:

  <definition name="home" extends="public">
    <put-attribute name="body" value="/WEB-INF/views/home.jspx" />
  </definition>

私が望むのは、まったく新しい空のページを表示することだけです。ただし、「プロジェクト/ホーム」に移動すると、「リソースが見つかりません」と表示されます。

何が欠けているのか本当に理解できません。これらのことについてもう少し経験のある人が助けてくれることを願っています.

4

2 に答える 2

1

StackOverflowで次の質問と回答をご覧ください

SpringRooにカスタムページを追加する

乾杯。

于 2012-12-04T09:42:57.613 に答える
0

考えがあります:コントローラーを他のコントローラーがHomeControllerあるパッケージcom.demoing.controllerに入れます。

正確にはわかりませんが、Roo がこのパッケージ (およびサブパッケージ) のみをスキャンしてコントローラーを探すように Spring を構成したのかもしれません。

于 2012-12-04T08:22:19.850 に答える