D
dadom110
Gast
HuHu,
irgendwie klappt meine Kommunikation mit der Persistenzschicht nicht, bekomme meine EntityManager zugewiesen, bin wie folgt vorgegangen, hoffe jemand hat ein wenig Zeit um das mal durchzugehen
Benutze:
Eclipse Europe
GlassFish Application Server.
Standard Derby Datenbank
1. in Eclipse Dynamisch Web Project angelegt (JSP Seiten etc. laufen alle)
2. Java Klasse erzeugt mit Annotation "Entity" (gleicher Name wie in der Datenbank)
3. persistence.xml angelegt:
= eclispe kann "einigermaßen" zu der DB connecten, sehe meine angelegten Tables nicht, aber weiss nicht ob das ein Bug in dem komischen Eclipse Data Explorer ist.
4. Aufruf in einer JSP
Bekomme einen Fehler:
danke schon mal !!!!
Dom
[Edit by Beni: das Layout gerettet, benutz das nächste mal bitte die Vorschau]
irgendwie klappt meine Kommunikation mit der Persistenzschicht nicht, bekomme meine EntityManager zugewiesen, bin wie folgt vorgegangen, hoffe jemand hat ein wenig Zeit um das mal durchzugehen
Benutze:
Eclipse Europe
GlassFish Application Server.
Standard Derby Datenbank
1. in Eclipse Dynamisch Web Project angelegt (JSP Seiten etc. laufen alle)
2. Java Klasse erzeugt mit Annotation "Entity" (gleicher Name wie in der Datenbank)
3. persistence.xml angelegt:
Code:
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
<persistence-unit name="default">
<provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>
<class>dd.ReminderDate</class>
<properties>
<property name="toplink.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/>
<property name="toplink.jdbc.url" value="jdbc:derby:C:\DerbyDatabases\DTest"/>
<property name="toplink.jdbc.user" value="admin"/>
<property name="toplink.jdbc.password" value="adminadmin"/>
<property name="toplink.logging.level" value="INFO"/>
</properties>
</persistence-unit>
</persistence>
= eclispe kann "einigermaßen" zu der DB connecten, sehe meine angelegten Tables nicht, aber weiss nicht ob das ein Bug in dem komischen Eclipse Data Explorer ist.
4. Aufruf in einer JSP
Code:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@page import="javax.persistence.EntityManager"%>
<%@page import="dd.entities.ReminderDate"%>
<%@page import="java.sql.Date"%>
<%@page import="java.sql.Time"%>
<%@page import="javax.persistence.EntityTransaction"%>
<%@page import="javax.persistence.EntityManagerFactory"%>
<%@page import="javax.persistence.Persistence"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
//MockCode:
//Die Klasse die ich angelegt habe mit entsprechender Datenbanktabelle:
ReminderDate mockDate=new ReminderDate();
mockDate.setStartdate(new Date(2008,03,01));
mockDate.setEnddate(new Date(2008,03,01));
mockDate.setStarttime(new Time(15,00,00));
mockDate.setEndtime(new Time(15,30,00));
mockDate.setDescription("Ich bin ein kleines Beispiel fuer de Persistenz");
mockDate.setLabel("MockM3");
EntityManagerFactory emFactory=Persistence.createEntityManagerFactory("default");
EntityManager emf=emFactory.createEntityManager();
EntityTransaction transaction=emf.getTransaction();
transaction.begin();
emf.persist(mockDate);
transaction.commit();
emf.close();
%>
</body>
</html>
Bekomme einen Fehler:
Code:
Servlet.service() for servlet jsp threw exceptionjava.lang.NullPointerException
at oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider.createEntityManagerFactory(EntityManagerFactoryProvider.java:120)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:83)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:60)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:85)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:353)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:412)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:318)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:278)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:239)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
danke schon mal !!!!
Dom
[Edit by Beni: das Layout gerettet, benutz das nächste mal bitte die Vorschau]