Hallo zusammen
Ich habe eine externe mysql Datenbank erstellt mit Namen
udryw_java
dortdrin habe ich eine Tabelle angelegt mit Namen adressen
und drei Felder ID, Vorname, Nachname.
Nun habe ich auf youtube ein Video gefunden und wollte dies nachmachen aber es geht einfach nicht und ich finde den fehler einfach nicht. waere froh wenn ihr mir weiterhelfen könntet.
dazu habe ich folgende persistence xml
[XML]<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="HelloWorldPU" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>model.Adressen</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://mysql11.webland.ch:3306/udryw_java"/>
<property name="javax.persistence.jdbc.password" value="jean"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="javax.persistence.jdbc.user" value="udryw_java"/>
</properties>
</persistence-unit>
</persistence>
[/XML]
Das Servlet HelloServlet.java
und meine Adressen.java
wenn ich auf erstellen klicke gibts keine Fehlermeldung. aber wenn ich es im Browser http://localhost:8080/HelloWorld/HelloServlet eingebe
erscheint einfach eine leere weisse Seite ohne Fehlermeldung.
Seltsam ist aber wenn ich den Quelltext ansehe der WebSite steht nur
<html>
<head>
<title>Servlet HelloServlet</title>
</head>
<body>
der Quelltext ist wie abgeschnitten.
Ich weiss dass ihr wahrscheinlich keine zeit habt meinen Code zu studieren.
Dennoch danke ich euch
Ich habe eine externe mysql Datenbank erstellt mit Namen
udryw_java
dortdrin habe ich eine Tabelle angelegt mit Namen adressen
und drei Felder ID, Vorname, Nachname.
Nun habe ich auf youtube ein Video gefunden und wollte dies nachmachen aber es geht einfach nicht und ich finde den fehler einfach nicht. waere froh wenn ihr mir weiterhelfen könntet.
dazu habe ich folgende persistence xml
[XML]<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="HelloWorldPU" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>model.Adressen</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://mysql11.webland.ch:3306/udryw_java"/>
<property name="javax.persistence.jdbc.password" value="jean"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="javax.persistence.jdbc.user" value="udryw_java"/>
</properties>
</persistence-unit>
</persistence>
[/XML]
Das Servlet HelloServlet.java
Java:
package server;
import java.io.IOException;
import java.io.PrintWriter;
import javax.persistence.EntityManagerFactory;
import javax.persistence.PersistenceUnit;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Adressen;
/**
*
* @author pudr
*/
public class HelloServlet extends HttpServlet {
@PersistenceUnit
EntityManagerFactory emf;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet HelloServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet HelloServlet at " + request.getContextPath () + "</h1>");
// Adressen adressen = (Adressen)emf.createEntityManager().createNamedQuery("Adressen.findAll").getResultList().get(6);
//out.println("<h1>Servlet HelloServlet at " + adressen.getVorname() + "</h1>");
Adressen I = (Adressen)emf.createEntityManager().createNamedQuery("Adressen.findAll").getResultList();
out.println("<h1>Servlet HelloServlet at " + I.getVorname() + "</h1>");
out.println("<h1>Servlet HelloServlet at " + I.getVorname() + "</h1>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**
* Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
und meine Adressen.java
Java:
package model;
import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlRootElement;
@Entity
@Table(name = "adressen")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Adressen.findAll", query = "SELECT a FROM Adressen a"),
@NamedQuery(name = "Adressen.findById", query = "SELECT a FROM Adressen a WHERE a.id = :id"),
@NamedQuery(name = "Adressen.findByName", query = "SELECT a FROM Adressen a WHERE a.nachname = :udry")})
public class Adressen implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "ID")
private Integer id;
@Basic(optional = false)
@Lob
@Column(name = "Vorname")
private String Vorname;
@Basic(optional = false)
@Lob
@Column(name = "Nachname")
private String Nachname;
public Adressen() {
}
public Adressen(Integer id) {
this.id = id;
}
public Adressen(Integer id, String vorname, String nachname) {
this.id = id;
this.Vorname = vorname;
this.Nachname = nachname;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getVorname() {
return Vorname;
}
public void setVorname(String vorname) {
this.Vorname = vorname;
}
public String getNachname() {
return Nachname;
}
public void setNachname(String nachname) {
this.Nachname = nachname;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Adressen)) {
return false;
}
Adressen other = (Adressen) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
return "model.Adressen[ id=" + id + " ]";
}
}
wenn ich auf erstellen klicke gibts keine Fehlermeldung. aber wenn ich es im Browser http://localhost:8080/HelloWorld/HelloServlet eingebe
erscheint einfach eine leere weisse Seite ohne Fehlermeldung.
Seltsam ist aber wenn ich den Quelltext ansehe der WebSite steht nur
<html>
<head>
<title>Servlet HelloServlet</title>
</head>
<body>
der Quelltext ist wie abgeschnitten.
Ich weiss dass ihr wahrscheinlich keine zeit habt meinen Code zu studieren.
Dennoch danke ich euch