Hi Rohit,
    Could you check if weblogic.jar is there in your client's classpath.
Also, you will need to put username and password in the properties object
while making the initial context.

Regards,
Rupesh.



----- Original Message -----
From: "Rohit Parik" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, January 27, 2003 9:07 AM
Subject: MDB invocation error


> Hi All,
>
> Need some help with invoking an MDB on WLS. We setup everything by the
book.
> Cant understand what we are doing wrong.
>
> Problem Definition : Failure to execute the Message Driven Bean deployed
on
> BEA Weblogic Server v7.0
>
> Source code for the MDB
> Source of MDB -
>
> import javax.ejb.*;
> import javax.jms.*;
> import javax.naming.*;
>
> public class BPmdbBean implements MessageDrivenBean, MessageListener
> {
>
>   MessageDrivenContext messageDrivenContext = null;
>   public BPmdbBean ()
>   {
>     System.out.println("Inside the constructor...");
>   }
>
>   public void setMessageDrivenContext(MessageDrivenContext
> messageDrivenContext)
>   {
>     this.messageDrivenContext = messageDrivenContext;
>   }
>
>   public void ejbCreate() throws CreateException
>   {
>     System.out.println("This is ejbCreate()...");
>   }
>
>   public void onMessage(Message inMessage)
>   {
>     TextMessage msg = null;
>     try
>     {
>         if (inMessage instanceof TextMessage)
>         {
>             msg = (TextMessage) inMessage;
>             System.out.println("MESSAGE BEAN: Message received: " +
> msg.getText());
>         }
>         else
>             System.out.println("Message of wrong type: " +
> inMessage.getClass().getName());
>     }
>     catch (JMSException e)
>     {
>         e.printStackTrace();
>         messageDrivenContext.setRollbackOnly();
>     }
>     catch (Throwable te)
>     {
>         te.printStackTrace();
>     }
>   }
>
>   public void ejbRemove()
>   {
>     System.out.println("This is ejbRemove()...");
>   }
> }
>
> Source of the Client -
> import javax.naming.*;
> import javax.jms.*;
>
> public class msgClient
> {
>   msgClient msgClientObject = new msgClient();
>   public static void main (String[] args) throws Exception
>   {
>     System.out.println("About to run client" ) ;
>
>     String url = "t3://223.255.255.194:7001";
>
>     java.util.Properties properties = System.getProperties();
>     properties.put(Context.INITIAL_CONTEXT_FACTORY,
> "weblogic.jndi.WLInitialContextFactory");
>     properties.put(Context.PROVIDER_URL, url);
>
>     Context ctx = new InitialContext ( properties );
>     QueueConnectionFactory factory = null;
>     Queue queue = null;
>
>      try
>     {
>       factory = (QueueConnectionFactory ) ctx.lookup
> ("java:comp/env/jms/NewQueueConnectionFactory");
>
>       queue = ( Queue ) ctx.lookup ( "java:comp/env/jms/NewJMSQueue" ) ;
>     }
>     catch (NamingException e)
>     {
>       System.out.println("JNDI lookup failed.. " + e.toString());
>       System.exit(1);
>     }
>
>     QueueConnection connection = factory.createQueueConnection();
>
>     QueueSession session = connection.createQueueSession(false,
> Session.AUTO_ACKNOWLEDGE);
>
>     QueueSender queueSender = session.createSender(queue);
>
>     TextMessage message = session.createTextMessage();
>     for (int i = 0; i < 5; i++)
>     {
>       message.setText("This is message " + (i + 1));
>       System.out.println("Sending message: " + message.getText());
>       queueSender.send(message);
>     }
>   }
>
>   public msgClient()
>   {
>     try
>     {
>       jbInit();
>     }
>     catch(Exception e)
>     {
>       e.printStackTrace();
>     }
>   }
>   private void jbInit() throws Exception
>   {
>   }
> }
>
> The configurations on the Weblogic Server:
> For the Connection Factory:
> Name : NewQueueConnectionFactory
> JNDI Name : NewQueueConnectionFactory
> Client Id :
> Default Priority : 4
> Default Time To Live : 0
> Default Time To Deliver : 0
> Default Delivery Mode  : Persistent
> Defualt ReDelivery Delay : 0
> Messages Maximum : 10
> Overrun Policy : Keep Old
> (Not Checked) Allow Close In On Message
> Acknowledge Policy: All
> (Checked) Load Balancing Enabled
> (Checked ) Server Affinity Enabled
>
> The target server specified
>
> Stores
> Name : NewJDBCStore
> Connection Pool : SamplePool
>
>
> Servers
> Name : NewJMSServer
> Store : NewJDBCStore
> Paging Store : none
> Temporary template : none
>
> Target server specified
>
> Destinations
> Name : NewJMSQueue
> JNDI Name : NewJMSQueue
> Enable Store: default
> Template: none
> Destination Keys : none
>
> (The properties not mentioned all set to default values)
>
> On execution of the client program error occurs.
> The error is : Naming Exception
>
> The class name should be specified in the environment properties file or
in
> applet parameter
> This error occurs on reaching the code for lookup in the client code.
>
> Any help is welcome.
>
> Regards
> Rohit
>
>
===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
body
> of the message "signoff EJB-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
>
>
>

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to