- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 mysql 查询,如果我在 mysql 工作台的查询编辑器中运行它,它会返回多行。现在我想将查询结果推送到列表,将列表添加到模型,并在 View 中显示结果。但是,我收到错误。我做错了什么,如何解决这个问题?
来自 Controller 的代码片段:
@Transactional
@RequestMapping(value = "/question-editor", method = RequestMethod.GET)
public ModelAndView viewQuestionsToEdit(@RequestParam("username")String user, ModelAndView model, Principal principal){
model.setViewName("question-editor");
int id2 = 0;
try
{
if(user != null)
id2 = Integer.parseInt(user);
}
catch (NumberFormatException e)
{
id2 = 0;
}
Question question = em.find(com.databaseproject.questor.model.Question.class, id2);
model.addObject("question", question);
List<Question> questions = (List<Question>)em.createNativeQuery("SELECT q.questionText FROM question q WHERE idQuestion IN (SELECT qchq.Question_idQuestion FROM questioncart_has_question qchq JOIN (SELECT qc.idQuestionCart FROM questioncart qc WHERE User_username =:id2 ORDER BY idQuestionCart DESC LIMIT 1) qc ON qchq.QuestionCart_idQuestionCart = qc.idQuestionCart );")
.setParameter("id2", user).getResultList();
model.addObject("questionstoedit", questions);
String name = principal.getName(); //get logged in username
model.addObject("username", name);
return model;
}
尝试将值获取到 jsp View 文件中:
<c:forEach var="question" items="${questionstoedit}">
<p>Question no. ${question.questionText}</p>
</c:forEach>
我收到的错误是:
javax.el.PropertyNotFoundException: Property 'questionText' not found on type java.lang.String
这是模型类:Question.java:
package com.databaseproject.questor.model;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Transient;
@Entity
public class Question {
@Id
private int idQuestion;
private String questionText;
private String solutionText;
private byte[] image;
private String filepath;
private int year;
private String User_username;
private int Teacher_idTeacher;
private String Course_coursecode;
@Transient
private String encodedImage;
public int getIdQuestion() {
return idQuestion;
}
public void setIdQuestion(int idQuestion) {
this.idQuestion = idQuestion;
}
public String getQuestionText() {
return questionText;
}
public void setQuestionText(String questionText) {
this.questionText = questionText;
}
public String getSolutionText() {
return solutionText;
}
public void setSolutionText(String solutionText) {
this.solutionText = solutionText;
}
public byte[] getImage() {
return image;
}
public void setImage(byte[] image) {
this.image = image;
}
public String getFilepath() {
return filepath;
}
public void setFilepath(String filepath) {
this.filepath = filepath;
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
public String getUser_username() {
return User_username;
}
public void setUser_username(String user_username) {
User_username = user_username;
}
public int getTeacher_idTeacher() {
return Teacher_idTeacher;
}
public void setTeacher_idTeacher(int teacher_idTeacher) {
Teacher_idTeacher = teacher_idTeacher;
}
public String getCourse_coursecode() {
return Course_coursecode;
}
public void setCourse_coursecode(String course_coursecode) {
Course_coursecode = course_coursecode;
}
public String getEncodedImage() {
return encodedImage;
}
public void setEncodedImage(String encodedImage) {
this.encodedImage = encodedImage;
}
}
最佳答案
将返回类型更改为字符串列表:
List<String> questions = (List<String>)em.createNativeQuery("...");
您正在选择字符串的List
,如果没有特定的映射器,则无法将其映射到 Question 类。
在 JSP 上应用此更改:
<c:forEach var="question" items="${questionstoedit}">
<p>Question no. ${question}</p>
</c:forEach>
关于Spring-Hibernate-MySQL 应用程序中的 javax.el.PropertyNotFoundException : Property not found on type java. lang.String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36533537/
我升级了 Java EE Web 应用程序以使用较新的 PrimeFaces 版本,突然在 PrimeFaces commandlink 的操作属性中调用重载 bean 方法不再起作用。我尝试使用 J
考虑以下代码片段。 var SomeView = Backbone.View.extend({ collection: new SomeCollection(), render: fu
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
我的 JSP 在 Tomcat 7 中运行良好,但在 Tomcat 6 中不起作用,我认为这是因为您不能从 EL 2.1 调用方法(getter/setter 除外)。 我需要调用的方法不能命名为ge
这个问题在这里已经有了答案: How to nest an EL expression in another EL expression (2 个答案) 关闭 5 年前。 我有 Java 枚举类型,
为什么会这样? ....Some Code 在我的 profielForm 中,我只有一个 getCityOptions() 方法,没有 cityO
我正在关注 backbone.js tutorial并遇到了 2 个函数 initialize() 和 render()。 initialize() 在附加一些 html 时使用了 $(self.el
对于给定的示例,this.el 和 this.$el 之间有什么区别? 我知道 this.$el 指向 this.el 的 jQuery 对象,在本例中是 'li'。 当我呈现 View 时,我可以在
我一直在我的主干应用程序中使用 this.$el,如下所示: render: function() { this.$el.html(this.template); }, 然后我在网上看到代码使
我想使用 EL 在 jsp 中调用一个传递给它的参数的 bean 函数。问题是它不允许这样的事情:“${teacherBean.certificationFor(${particularField})
有没有办法可以在 EL 中获取 ServletContext 中设置的属性,使其最终成为 JavaScript 变量? 我将其设置为 context.setAttribute("testing.por
我正在编写 JSP/JSTL,并且我正在尝试遍历数据库中的几个项目。 我目前在数据库中有三列,${image1} , ${image2}和 ${image3} .我正在尝试使用以下代码为他们打印信息:
this.$el.html 和 this.$el.append 在渲染模板时有区别吗?我对 js、backbone 等完全陌生。在我正在从事的当前项目中,我看到类似 this.$el.append(P
我刚刚学习了一些主干教程,我有一个一般的 jQuery 问题,我实际上已经想知道了一段时间。 有时我会在 jQuery 选择器中看到带有第二个参数的调用,例如 $('ul', this.el)。 选择
有没有办法在 SpEL 中调用静态接口(interface)方法?例如: T(java.util.stream.IntStream).of(new Integer[]{1,2,3}).sum() 当我
这个问题已经有答案了: If a DOM Element is removed, are its listeners also removed from memory? (6 个回答) 已关闭 5 年
JBoss EL resolver online documentation中有这句话: It's important to fully understand how this extension t
使用 JSF 2.0 和 EL,我试图在 POJO 上调用一个方法,它是一个 viewscoped bean 的一个属性。该代码实际上与 @BalusC 非常相似的教程here .当我调用一个不带参数
所以我整个下午都在 this problem 上卡住了我最终解决了。原来我分配的是 el 而不是 $el。 两者有什么区别,我应该在什么时候使用它们? 最佳答案 直接来自 the documentat
我正在努力学习 Backbone 。我知道 el 是正在执行的元素。如果未指定,则为空 div。我正在我的 View 中创建一个模板并返回 View 对象。然后我正在渲染 View ,但我不明白为什么
我是一名优秀的程序员,十分优秀!