[jboss-user] [EJB 3.0] - Another NULL Pointer Exception on Entity Manager =/
Tchello
do-not-reply at jboss.com
Wed Feb 11 12:21:52 EST 2009
Hi!
I've been looking so far on google but i could not find it.
I'm still learning EJB3 and trying to do a simple example to discovery how it works (including annotations and application servers like JBoss 4.2.2).
Could you help-me?
Here is the code samples:
A simple entity
| package EJBClasses;
|
| import java.io.Serializable;
| import javax.persistence.Column;
| import javax.persistence.Entity;
| import javax.persistence.GeneratedValue;
| import javax.persistence.GenerationType;
| import javax.persistence.Id;
| import javax.persistence.Table;
|
| /**
| *
| * @author Tchello
| */
| @Entity
| @Table(name="endereco")
| public class Endereco implements Serializable {
|
| //--------------------------------------------------------------------------
| private Integer codigo;
| private String rua;
| private Integer numero;
| private String bairro;
| private String cep;
| private String cidade;
| private String estado;
| private String pais;
| //--------------------------------------------------------------------------
| //--------------------------------------------------------------------------
| /** Creates a new instance of Endereco */
| public Endereco() {
| }
| //--------------------------------------------------------------------------
| @Id
| @GeneratedValue(strategy=GenerationType.SEQUENCE)
| @Column(name="codigo")
| public Integer getCodigo() {
| return codigo;
| }
| //--------------------------------------------------------------------------
| public void setCodigo(Integer codigo) {
| this.codigo = codigo;
| }
| //--------------------------------------------------------------------------
| @Column(name="rua")
| public String getRua() {
| return rua;
| }
| //--------------------------------------------------------------------------
| public void setRua(String rua) {
| this.rua = rua;
| }
| //--------------------------------------------------------------------------
| @Column(name="numero")
| public Integer getNumero() {
| return numero;
| }
| //--------------------------------------------------------------------------
| public void setNumero(Integer numero) {
| this.numero = numero;
| }
| //--------------------------------------------------------------------------
| @Column(name="bairro")
| public String getBairro() {
| return bairro;
| }
| //--------------------------------------------------------------------------
| public void setBairro(String bairro) {
| this.bairro = bairro;
| }
| //--------------------------------------------------------------------------
| @Column(name="cep")
| public String getCep() {
| return cep;
| }
| //--------------------------------------------------------------------------
| public void setCep(String cep) {
| this.cep = cep;
| }
| //--------------------------------------------------------------------------
| @Column(name="cidade")
| public String getCidade() {
| return cidade;
| }
| //--------------------------------------------------------------------------
| public void setCidade(String cidade) {
| this.cidade = cidade;
| }
| //--------------------------------------------------------------------------
| @Column(name="estado")
| public String getEstado() {
| return estado;
| }
| //--------------------------------------------------------------------------
| public void setEstado(String estado) {
| this.estado = estado;
| }
| //--------------------------------------------------------------------------
| @Column(name="pais")
| public String getPais() {
| return pais;
| }
| //--------------------------------------------------------------------------
| public void setPais(String pais) {
| this.pais = pais;
| }
| //--------------------------------------------------------------------------
| }
|
My Entity Manager and interfaces:
| @Stateless
| public class ManagerBean implements Manager,ManagerRemote{
|
| @PersistenceContext(unitName="MyPostgresDS")//unitName="myunit"
| private EntityManager em;
|
| /** Creates a new instance of ManagerBean */
| public ManagerBean() {
| }
| public void salvar(){
| Endereco endereco = new Endereco();
| //endereco.setCodigo(3);
| endereco.setBairro("vila do fulano");
| endereco.setCep("1232413");
| endereco.setCidade("Campinas");
| endereco.setEstado("Sao Paulo");
| endereco.setNumero(123);
| endereco.setPais("Brasil");
| endereco.setRua("Rua dumal");
|
| System.out.println("Persisting...");
|
| em.getTransaction().begin();
| em.persist(endereco);
| em.getTransaction().commit();
| }
| }
|
|
The main:
| public class EntityInstructorClient {
|
| public static void main(String args[]){
| System.out.println("Main...");
| ManagerBean bean = new ManagerBean();
| bean.salvar();
| }
| }
|
I think the error could be on xml files, what i'm not familiar yet.
Here:
persistence.xml
| <persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
| <persistence-unit name="myunit" transaction-type ="JTA">
| <jta-data-source>java:MyPostgresDS</jta-data-source>
| <class>EJBClasses.ManagerBean</class>
| <properties>
| <propertie name="org.hibernate.hbm2ddl" value="create-table"/>
| <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
| <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
| </properties>
| </persistence-unit>
| </persistence>
|
jboss.xml
| <datasources>
| <local-tx-datasource>
| <jndi-name>MyPostegresDS</jndi-name>
| <connection-url>jdbc/:postgresql://192.168.0.200:5432/netejb</connection-url>
| <driver-class>org.postgresql.Driver</driver-class>
| <user-name>postgres</user-name>
| <password>postgres</password>
| <min-pool-size>5</min-pool-size>
| <max-pool-size>20</max-pool-size>
| <idle-timeout-minutes>5</idle-timeout-minutes>
| <metadata>
| <type-mapping>PostgreSQL</type-mapping>
| </metadata>
| </local-tx-datasource>
| </datasources>
|
All i got is:
anonymous wrote :
| Exception in thread "main" java.lang.NullPointerException
| at EJBClasses.ManagerBean.salvar(ManagerBean.java:42)
| at EJBClasses.EntityInstructorClient.main(EntityInstructorClient.java:23)
| Java Result: 1
|
What am i missing? I'm trying so hard but there is so many things to learn, can someone help me?
I am using NetBeans 5.5.1, JBoss 4.2.2 and EJB 3 (i cant change the versions).
Thank you!
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4209161#4209161
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4209161
More information about the jboss-user
mailing list