- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在尝试启动 Web 服务时收到此错误消息:org.apache.jasper.JasperException: javax.el.PropertyNotFoundException: 在 com.bridge.service.Service 类型上找不到属性“jobId”
奇怪的是,jobId
在服务和我的数据库中都定义了,它将从中提取数据。
这是应该访问数据的函数。
public List<Service> getAllData() {
List<Service> data = new ArrayList<Service>();
try {
Class.forName(jdbc_driver);
// Connect to DB
Connection conn = DriverManager.getConnection(db_url, USER, PASS);
Statement statement = conn.createStatement();
ResultSet rs = statement.executeQuery("SELECT * FROM email_data");
while (rs.next()) {
Service serv = new Service();
//UUID id = null;
serv.setId(rs.getString("jobId")); // error here
serv.setName(rs.getString("jobName"));
serv.setStatus(rs.getString("jobStatus"));
serv.setStart(rs.getTimestamp("start"));
serv.setFinish(rs.getTimestamp("finish"));
data.add(serv);
}
rs.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
System.err.println("listing data, ya fucked up boi");
System.err.println(e.getMessage());
}
return data;
}
此外,在我的 JSP 文件中,它应该抓取数据,它被列为名为 jobId
的变量,如下所示。
<body>
<table border=1>
<thead>
<tr>
<th>Job ID</th>
<th>Job Name</th>
<th>Job Status</th>
<th>Start Time</th>
<th>Finish Time</th>
<th colspan=2>Action</th>
</tr>
</thead>
<tbody>
<c:forEach items="${jobs}" var="job">
<tr>
<td><c:out value="${job.jobId}"/></td>
<td><c:out value="${job.jobName}"/></td>
<td><c:out value="${job.jobStatus}"/></td>
<td><c:out value="${job.start}"/></td>
<td><c:out value="${job.finish}"/></td>
<td><a href="ServiceController?action=edit&jobId=<c:out value="${job.jobId}"/>">Update</a></td>
<td><a href="ServiceController?action=delete&jobId=<c:out value="${job.jobId}"/>">Delete</a></td>
</tr>
</c:forEach>
</tbody>
</table>
<p><a href="ServiceController?action=insert">Add Job</a></p>
有什么想法吗?我在这里不知所措。
编辑:这是Service.java:
public class Service {
private String jobId;
private String jobName;
private String jobStatus;
private Timestamp jobStart;
private Timestamp jobFinish;
public Service() {
// empty constructor
}
public Service(String id, String n, String s) {
jobId = id;
jobName = n;
jobStatus = s;
}
public String getId() {
return this.jobId;
}
public String getName() {
return this.jobName;
}
public String getStatus() {
return this.jobStatus;
}
public void setId(String id) {
this.jobId = id;
}
public void setName(String name) {
this.jobName = name;
}
public void setStatus(String status) {
this.jobStatus = status;
}
public void setStart(Timestamp time) {
this.jobStart = time;
}
public void setFinish(Timestamp time) {
this.jobFinish = time;
}
// SQL Info
static final String jdbc_driver = "com.mysql.jdbc.Driver";
static final String db_url = "jdbc:mysql://localhost:3306/email_data";
// SQL creds
static final String USER = "<redacted>";
static final String PASS = "<redacted>";
public void hygienePost(Service serv) throws Exception {
NewTask.toRabbit(serv.getId(), serv.getName(), serv.getStatus());
// System.out.println(serv.getId()+serv.getName()+serv.getStatus());
}
public List<Service> getAllData() {
List<Service> data = new ArrayList<Service>();
try {
Class.forName(jdbc_driver);
// Connect to DB
Connection conn = DriverManager.getConnection(db_url, USER, PASS);
Statement statement = conn.createStatement();
ResultSet rs = statement.executeQuery("SELECT * FROM email_data");
while (rs.next()) {
Service serv = new Service();
// UUID id = null;
/*
serv.setId(rs.getString("jobId"));
serv.setName(rs.getString("jobName"));
serv.setStatus(rs.getString("jobStatus"));
serv.setStart(rs.getTimestamp("start"));
serv.setFinish(rs.getTimestamp("finish")); data.add(serv);
*/
ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
// The column count starts from 1
for (int i = 1; i < columnCount + 1; i++) {
String name = rsmd.getColumnName(i);
System.out.println(rs.getString(1));
}
}
rs.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
System.err.println("listing data, ya fucked up boi");
System.err.println(e.getMessage());
}
return data;
}
}
最佳答案
它的 Jasper 异常(exception)。
serv.setId(rs.getString("jobid")); // error here
您在服务类中提到了 setID 。那么属性就是id。
所以你需要这样做
<td><c:out value="${job.id}"/></td>
所以在 bean 类中不应该有不同的 propname 和 getter setter。应该是一样的。
所以请更改 getter 和 setter。
添加 getJobid 和 setJobid。
关于javax.el.PropertyNotFoundException : Property 'jobId' not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32740580/
我升级了 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 ,但我不明白为什么
我是一名优秀的程序员,十分优秀!