500在HTML中使用值并调用JSP/Java时出错
嘿,在下面的代码中,我有一些错误,但不知道是什么导致的。我制作了一个下拉菜单来选择HTML中的一个选项。选择块选项的内容和值应不同。现在我得到了500个错误 当内容和值为just resultset.getInt4时,程序工作并执行对数据库的操作 这是我的HTML文件:500在HTML中使用值并调用JSP/Java时出错,java,html,sql,jsp,Java,Html,Sql,Jsp,嘿,在下面的代码中,我有一些错误,但不知道是什么导致的。我制作了一个下拉菜单来选择HTML中的一个选项。选择块选项的内容和值应不同。现在我得到了500个错误 当内容和值为just resultset.getInt4时,程序工作并执行对数据库的操作 这是我的HTML文件: <%@page import="javax.sql.DataSource"%> <%@page import="javax.naming.Context"%> <%@page import="jav
<%@page import="javax.sql.DataSource"%>
<%@page import="javax.naming.Context"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.Date"%>
<%@page import="java.sql.*"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Allocation Paket</title>
</head>
<body>
<form action="paket_update.jsp" method="post">
<table border="0">
<%ResultSet resultset =null;
ResultSet resultset1 =null;%>
<%
Context initContext = new InitialContext();
DataSource ds = (DataSource) initContext.lookup("java:/comp/env/jdbc/myoracle");
try(Connection con= ds.getConnection()){
con.setAutoCommit(false);
Statement statement = con.createStatement() ;
Statement statement1 = con.createStatement() ;
resultset =statement.executeQuery("SELECT m.vorname, m.nachname, m.angestelltennummer, b.svnr FROM bote b JOIN mitarbeiter m ON m.svnr = b.svnr") ;
resultset1 =statement1.executeQuery("SELECT paketnummer FROM paket") ;
%>
<td>Bote:</td>
<td>
<select name="bote">
<% while(resultset.next()){ %>
<option value="<% resultset.getInt(4);%>"><%= resultset.getString(1)+", "+resultset.getString(2)+", " + resultset.getInt(3) %></option>
<% } %>
</select>
</td>
<td>Paket:</td>
<td>
<select name="paket">
<% while(resultset1.next()){ %>
<option ><%= resultset1.getInt(1) %></option>
<% } %>
</select>
</td>
<%
}catch(Exception e)
{
out.println("wrong entry"+e);
}
%>
</table>
<input type="submit" value="Insert"/>
</form>
<br>
<br>
<a href="index.html">Zur Startseite</a>
</body>
</html>
这是我的jsp文件更新包:
<%@page import="javax.sql.DataSource"%>
<%@page import="javax.naming.Context"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.Date"%>
<%@page import="java.sql.*"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Update Paket</title>
</head>
<body>
<%
Context initContext = new InitialContext();
DataSource ds = (DataSource) initContext.lookup("java:/comp/env/jdbc/myoracle");
String s="Der Bote wurde erfolgreich zugewiesen!";
try(Connection con= ds.getConnection()){
con.setAutoCommit(false);
String query = "UPDATE paket SET BOTE = ? WHERE PAKETNUMMER=?";
try(PreparedStatement stmt = con.prepareStatement(query)){
int svnr = Integer.parseInt(request.getParameter("bote"));
int paketnummer = Integer.parseInt(request.getParameter("paket"));
stmt.setInt(1,svnr);
stmt.setInt(2,paketnummer);
stmt.execute();
con.commit();
} catch (SQLException ex) {
out.println("Fehler: " + ex.getMessage() + " (" + ex.getSQLState() + ')');
s="Der Bote wurde nicht zugewiesen";
try {
con.rollback();
} catch (SQLException ignore) {
out.println("Rollback nicht erfolgreich! Fehler: " + ignore.getMessage() + " ("
+ ignore.getSQLState() + ')');
}
}
}catch (SQLException ex) {
out.println("Fehler: " + ex.getMessage() + " (" + ex.getSQLState() + ')');
}
out.println(s);
%>
<br>
<a href="index.html">Zur Startseite</a>
</body>
</html>
我希望你能帮我^^我想这一行是错的,因为开头缺少一个=字符 :
HTML代码实际上也是一个JSP。。。不完整,其中第二个表单字段作为第二个参数传递给表单操作包?2 jsp文件是名为paket_update.jsp的文件吗?3 JSP中的变量s在哪里定义?这不能像现在这样工作。Bite vollständige代码Beispiele angeben,sonst schaut sich das niemand an.ok thx更新了代码,现在是整个文件谢谢更新。请您提供有关HTTP 500错误的更多详细信息,可能还有来自应用程序服务器日志的stacktrace,这可能会提示错误位置?PS我可能已经发现了问题,并且我创建了一个答案,请检查这是否是原因。
<option value="<% resultset.getInt(4);%>"><%= resultset.getString(1)+", "+resultset.getString(2)+", " + resultset.getInt(3) %></option>
<option value="<%= resultset.getInt(4);%>"><%= resultset.getString(1)+", "+resultset.getString(2)+", " + resultset.getInt(3) %></option>