0

ユーザーのオブジェクトが取り込まれるはずのページをリクエストしましたが、返されたページは空でした。

リクエストのコントローラー

    @RequestMapping(value = "/main/user/testing", method = RequestMethod.GET)
    public String getRecords(@RequestParam("userId") Integer userId, ModelMap 

        model) {
     if(userId !=null)

     {
           UserEntity user = userService.getUserByID(userId);

         model.addAttribute("setter", user);
     }

  return "/main/user/testing";
 }

取得する親と関連する子のモデル

ユーザーエンティティ

   public class UserEntity implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Basic(optional = false)
    @Column(name = "user_id")
    private Integer userId;

    @Column(name = "name")
    private String name;

        @ManyToOne(cascade={CascadeType.ALL})
        @JoinColumn(name="checker_id")
        private UserEntity checker;

        @OneToMany(mappedBy="checker", orphanRemoval=true, cascade = CascadeType.ALL)
        private Set<UserEntity> setters = new HashSet<UserEntity>();

        @OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER, mappedBy="setter")
        private Set<Module> sModule = new HashSet<Module>();

        @OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER, mappedBy="checker")
        private Set<Module> cModule = new HashSet<Module>(); 

モジュール

    public class Module implements Serializable{

  @Id
      @GeneratedValue(strategy = GenerationType.AUTO)
      @Column(name = "module_id")
      private Integer moduleId;

  @Column(name = "module_code")
      private String moduleCode;

  @Column(name = "module_name")
      private String moduleName;

したがって、コントローラーでユーザーIDをパラメーターとして使用すると、ユーザーに関連付けられたモジュールとともに返されます。

ページ自体は返されますが、テーブル ヘッダーのみで、データベースからの値はありません。

リクエストされたページ

   <table>
        <tr>
                    <th>User Id</th>
                    <th>Name</th>
            <th>Module Code</th>
            <th>Module Name</th>
              </tr>

       <c:forEach items="${setter}" var="obj" >
        <c:forEach items="${obj.sModule}" var="module" >


            <tr>
                <td><c:out value="${obj.userId}" escapeXml="true" /></td>
                <td><c:out value="${obj.name}" escapeXml="true" /></td>

                <td><c:out value="${module.moduleCode}" escapeXml="true" /></td>
                <td><c:out value="${module.moduleName}" escapeXml="true" /></td>



            </tr>
            </c:forEach>
        </c:forEach>
    </table>

これが起こっている理由はありますか?

4

1 に答える 1