This week's book giveaway is in the Java 8 forum.
We're giving away four copies of Java 8 in Action and have Raoul-Gabriel Urma, Mario Fusco, and Alan Mycroft on-line!
See this thread for details.
The moose likes EJB and other Java EE Technologies and the fly likes Please help me in the cmp problem Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Please help me in the cmp problem" Watch "Please help me in the cmp problem" New topic
Author

Please help me in the cmp problem

vikram veera
Ranch Hand

Joined: Dec 26, 2000
Posts: 43
hai everyone,
I set connection pool & deploy the bean in weblogic perfectly...
My connection pool look like this..
weblogic.jdbc.connectionPool.demoPool=\
url=jdbc dbc:sample,\
driver=sun.jdbc.odbc.JdbcOdbcDriver,\
initialCapacity=1,\
maxCapacity=2,\
capacityIncrement=1,\
props=user=scott;password=tiger;server=none
# Add a TXDataSource for the connection pool:
weblogic.jdbc.TXDataSource.weblogic.jdbc.jts.demoPool=demoPool
#
# Add an ACL for the connection pool:
weblogic.allow.reserve.weblogic.jdbc.connectionPool.demoPool=everyone

But i have a problem while running a client it through an exception
As given below
javax.ejb.EJBException
at weblogic.rmi.extensions.AbstractRequest.sendReceive(AbstractRequest.java:76)
at ProductBeanHomeImpl_WLStub.create(ProductBeanHomeImpl_WLStub.java:184)
at ProductBeanHomeImpl_ServiceStub.create(Compiled Code)
at Client.main(Compiled Code)
Destroying products..
please help me in the problem what i have to do next.....

My code is given below
Product.java
-------------
import javax.ejb.*;
import java.rmi.RemoteException;
public interface Product extends EJBObject {
// Getter/setter methods for Entity Bean fields
public String getName() throws RemoteException;
public void setName(String name) throws RemoteException;

public String getDescription() throws RemoteException;
public void setDescription(String description) throws RemoteException;
public double getBasePrice() throws RemoteException;
public void setBasePrice(double price) throws RemoteException;

public String getProductID() throws RemoteException;
}

ProductBean.java
==================
import java.sql.*;
import javax.naming.*;
import javax.ejb.*;
import java.util.*;
import java.rmi.RemoteException;

public class ProductBean implements EntityBean {
protected EntityContext ctx;
// Container-managed state fields. Note that they must
// be public.
public String productID;// PK
public String name;
public String description;
public double basePrice;
public ProductBean() {
System.out.println("New Product Entity Bean Java Object created by EJB Container.");
}
//
// Business Logic Methods
//
// Simple getter/setter methods of Entity Bean fields.
public String getName() throws RemoteException {
System.out.println("getName() called.");
return name;
}

public void setName(String name) throws RemoteException {
System.out.println("getName() called.");
this.name = name;
}

public String getDescription() throws RemoteException {
System.out.println("getDescription() called.");
return description;
}

public void setDescription(String description) throws RemoteException {
System.out.println("setDescription() called.");
this.description = description;
}

public double getBasePrice() throws RemoteException {
System.out.println("getBasePrice() called.");
return basePrice;
}

public void setBasePrice(double price) throws RemoteException {
System.out.println("setBasePrice() called.");
this.basePrice = price;
}

public String getProductID() {
System.out.println("getProductID() called.");
return productID;
}
//
// EJB-required methods
//

public void ejbActivate() throws RemoteException {
System.out.println("ejbActivate() called.");
}

public void ejbRemove() throws RemoteException {
System.out.println("ejbRemove() called.");
}

public void ejbPassivate() throws RemoteException {
System.out.println("ejbPassivate () called.");
}

public void ejbLoad() throws RemoteException {
System.out.println("ejbLoad() called.");
}
public void ejbStore() throws RemoteException {
System.out.println("ejbStore() called.");
}

public void setEntityContext(EntityContext ctx) throws RemoteException {
System.out.println("setEntityContext called");
this.ctx = ctx;
}

public void unsetEntityContext() throws RemoteException {
System.out.println("unsetEntityContext called");
this.ctx = null;
}

public void ejbPostCreate(String productID, String name, String description, double basePrice) throws RemoteException {
System.out.println("ejbPostCreate() called");
}

public String ejbCreate(String productID, String name, String description, double basePrice) throws CreateException, RemoteException {
System.out.println("ejbCreate(" + productID + ", " + name + ", " + description + ", " + basePrice + ") called");
this.productID = productID;
this.name = name;
this.description = description;
this.basePrice = basePrice;
return null;
}
// No finder methods - they are implemented by Container
}
ProductHome
==============

import javax.ejb.*;
import java.rmi.RemoteException;
import java.util.Enumeration;

public interface ProductHome extends EJBHome {

Product create(String productID, String name, String description, double basePrice) throws CreateException, RemoteException;
// Finder methods. These are implemented by the
// container. You can customize the functionality of
// these methods by using the EJB Container tools.
public Product findByPrimaryKey(String key) throws FinderException, RemoteException;
public Enumeration findByName(String name) throws FinderException, RemoteException;
public Enumeration findByDescription(String description) throws FinderException, RemoteException;
public Enumeration findByBasePrice(double basePrice) throws FinderException, RemoteException;
public Enumeration findExpensiveProducts(double minPrice) throws FinderException, RemoteException;
public Enumeration findCheapProducts(double maxPrice) throws FinderException, RemoteException;
public Enumeration findAllProducts() throws FinderException, RemoteException;
}
ProductPk.java
==============
//package com.wiley.compBooks.roman.entity.product;
import java.io.Serializable;

public class ProductPK implements java.io.Serializable {

public String productID;
public ProductPK(String productID) {
this.productID = productID;
}
public ProductPK() {
}
public String toString() {
return productID.toString();
}
}
Client.java
=============
//package com.wiley.compBooks.roman.entity.product;
import javax.ejb.*;
import javax.naming.*;
import java.rmi.*;
import java.io.*;
import java.util.Enumeration;
import java.util.*;
/**
* Client test application on a Container-Managed Entity Bean, Product.
*/
public class Client {
public static void main(String[] args) {
ProductHome home = null;
try {
Properties props= new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
Context ctx=new InitialContext(props);
home = (ProductHome) ctx.lookup("ProductHome");
home.create("123-456-7890", "P5-350", "350MhzPentium", 200);
home.create("123-456-7891", "P5-400", "400MhzPentium", 300);
home.create("123-456-7892", "P5-450", "450MhzPentium", 400);
home.create("123-456-7893", "SD-64", "64MBSDRAM", 50);
home.create("123-456-7894", "SD-128", "128MBSDRAM", 100);
home.create("123-456-7895", "SD-256", "256MBSDRAM", 200);
/*
* Find a Product, and print out it's description
*/
Enumeration enum = home.findByName("SD-64");
System.out.println("The following product descriptions match the product name SD-64:");
while (enum.hasMoreElements()) {
Product prod = (Product) enum.nextElement();
System.out.println(prod.getDescription());
}
System.out.println("Calling finder to find all products that cost $200");
enum = home.findByBasePrice(200);
while (enum.hasMoreElements()) {
Product prod = (Product) enum.nextElement();
System.out.println(prod.getDescription());
}
}
catch (Exception e) {
e.printStackTrace();
}
finally {
if (home != null) {
try {
System.out.println("Destroying products..");

/*
* Find all the products
*/
Enumeration enum = home.findAllProducts();
while (enum.hasMoreElements()) {
try {
Product prod = (Product) enum.nextElement();
if (prod.getProductID().startsWith("123")) {
prod.remove();
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
Finder script syntax look like this...
(=name $name)
(=description $description)
(=basePrice $basePrice)
(>basePrice $minPrice)
(<basePrice $minPrice)>
i set it in weblogic server...
Deploy bean in weblogic5.1 is perfect...
there is no problem in this...
I have a problem while running client...

Please help me in this problem
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Please help me in the cmp problem
 
Similar Threads
ejb access bean
why ejbCreate can't be invoked?
Null Pointer exception thrown while deploying the cmp bean
How to do connection pooling for cmp?
BMP, Jboss, and mysql configuring