当我执行mi代码时,它给了我这个错误:
Estado HTTP 500 –内部服务器错误
这是代码:
public Inventario() {
super();
}
@Override
public void init() throws ServletException {
ODB objCategorias=ODBFactory.open("E:/ALMACEN.DB");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("text/html");
PrintWriter flujoEscritura=response.getWriter();
flujoEscritura.append("<!DOCTYPE html>");
flujoEscritura.append("<html><head><meta charset='UTF-8'>");
flujoEscritura.append("<title>Inventario</title>");
flujoEscritura.append("<link rel='stylesheet' type='text/css' href='css/estilo.css'>");
flujoEscritura.append("</head><body>");
CriteriaQuery consulta = new CriteriaQuery(Categoria.class);
Objects<Categoria> categorias = objCategorias.getObjects(consulta);
System.out.println("Hay " + categorias.size() + " productos que cumplen el criterio");
Categoria cat;
while (categorias.hasNext()) {
cat=categorias.next();
System.out.println(cat.getNombre());
if(cat.getNombre().equals("Bebidas")) {
ArrayList<Producto> pro = cat.getProductos();
for(Producto p:pro) {
flujoEscritura.append("<p" +p.getNombre()+"-> "+p.getCantidadUnidad()+"-> "+p.getStock()+" unidades"+"/p>");
}
}
else if(cat.getNombre().equals("Condimentos")) {
ArrayList<Producto> pro1 = cat.getProductos();
for(Producto p:pro1) {
flujoEscritura.append(p.getNombre()+"-> "+p.getCantidadUnidad()+"-> "+p.getStock()+" unidades");
}
}
flujoEscritura.append("</body></html>");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException{
doGet(request, response);
}
@Override
public void destroy() {
// Cierra la conexión con la base de datos ALMACEN.DB.
objCategorias.close();
super.destroy();
}
}
我需要使用Java servlet在html页面中附加ODB数据库的对象,以过滤结果。