javax.el.PropertyNotFoundException: свойство [cover_description] не найдено для типа [com.rtc_insurance.model.Plan] - PullRequest
0 голосов
/ 23 сентября 2018

Я новичок в весне, поэтому еще не до конца понимаю, как делать пользовательские запросы.Я попробовал этот код ниже, но он дает мне некоторые ошибки.

У меня есть 2 таблицы:

План таблицы

enter image description here

Покрытие плана

enter image description here

Я хочу получить все описание покрытия плана с кодом плана TEST123.

Этомой текущий код:

Plan.java

@Entity
@Table(name="plan")
public class Plan {
    /....

    @OneToMany(targetEntity=PlanCoverage.class, mappedBy="plan",cascade=CascadeType.ALL, fetch = FetchType.LAZY)
    private List<PlanCoverage> planCoverage;

    public List<PlanCoverage> getPlanCoverage() {
        return planCoverage;
    }

    public void setPlanCoverage(List<PlanCoverage> planCoverage) {
        this.planCoverage = planCoverage;
    }

    private String coverage_description;

    public String getCoverage_description() {
        return coverage_description;
    }

}

PlanCoverage.java

@Entity
@Table(name="plan_coverage")
public class PlanCoverage {

    @ManyToOne()
    @JoinColumn(name="plan_code", referencedColumnName = "plan_code",insertable=false, updatable=false)
    private Plan plan;

    public Plan getPlan() {
        return plan;
    }

    public void setPlan(Plan plan) {
        this.plan = plan;
    }

}

PlanRepository.java

public interface PlanRepository extends CrudRepository<Plan, String> {

    @Query(nativeQuery = true, value= "SELECT * FROM plan_coverage WHERE plan_code=:planCode")
    public List<Plan> findPlanCoverage(@Param("planCode") String planCode);
}

PlanController.java

@RequestMapping(value="/PlanDescription/{plan_code}", method=RequestMethod.GET)
    public ModelAndView planDescription(@PathVariable String plan_code) {
        ModelAndView model = new ModelAndView();
        Plan plan = planService.getPlanById(plan_code);
        model.addObject("planForm",plan);

        List<Plan> coverageList = planService.findByPlanCode(plan_code);
        model.addObject("coverageList",coverageList);

        model.setViewName("plan_description");
        return model;
    }

plan_description.jsp

<c:forEach items="${coverageList }" var="coverage">
  <span>${coverage.coverage_description}</span><br>
</c:forEach>

Я хочу получить доступ к описанию покрытия, но оно дает мне эту ошибку.

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 23 сентября 2018

У вашей организации «План» нет свойства (или, проще говоря, «метода получения»), которое называется «cover_description».Вы должны определить это в первую очередь.Atm у вас есть только «planCoverage» в качестве полезного свойства объекта плана для использования на вашей странице jsp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...