[jboss-user] [JBoss Messaging] - Problem in creating Jboss Messaging .sar deploying

ssjboss do-not-reply at jboss.com
Wed Apr 30 09:04:16 EDT 2008


Hi,
 
I am trying to implement jboss messaging listener service. 


Content of my .sar file is 
----------------------------------
jar -tf message_listener_service.sar
-------------------------------------------
META-INF/
  | META-INF/MANIFEST.MF
  | src/
  | src/service/
  | META-INF/jboss-service.xml
  | commons-io-1.2.jar
  | commons-logging-1.1.jar
  | javassist.jar
  | jboss-aop-jdk50.jar
  | jboss-common.jar
  | jboss-j2ee.jar
  | jboss-jmx.jar
  | jboss-messaging-client.jar
  | jboss-messaging.jar
  | jboss-remoting.jar
  | jboss-system.jar
  | jboss-xml-binding.jar
  | jbossall-client.jar
  | log4j.jar
  | src/service/Listener.class
  | trove.jar------------------------
Content of ->  META-INF/jboss-service.xml  is 
------------------
<server>
  |   <mbean code="src.service.Listener" 
  |          name="service.directory.monitor:src.service=Listener">
  |   </mbean>
  | <server>
----------------
 

Listener code 
---------------

package src.service;
  | 
  | /*
  | Use source code downloads, example commands,
  | and any other techniques at your own risk.
  | No warranty is provided.
  | */
  | 
  | import java.util.Properties;
  | 
  | import javax.jms.JMSException;
  | import javax.jms.Message;
  | import javax.jms.MessageListener;
  | import javax.jms.TextMessage;
  | import javax.jms.Topic;
  | import javax.jms.TopicConnection;
  | import javax.jms.TopicConnectionFactory;
  | import javax.jms.TopicSession;
  | import javax.jms.TopicSubscriber;
  | import javax.naming.Context;
  | import javax.naming.InitialContext;
  | import javax.naming.NamingException;
  | 
  | public class Listener implements MessageListener {
  |  
  | 	String url_;
  | 	String name_;
  | 	TopicConnection conn = null;
  |     	TopicSession session = null;
  |     	Topic topic = null;
  | 
  |     	public Listener(String url, String name) {
  |     		super();
  | 
  |     		url_ = url;
  |     		name_ = name;
  | 
  |     		try {
  |     			this.initializeListener();
  |     		} catch (Exception e) {
  |     			System.out.println("Error creating listener: " + e);
  | 			e.printStackTrace();
  | 		}
  | 
  | 	}
  | 
  | 	public void onMessage(Message msg) {
  | 
  | 		TextMessage tm = (TextMessage) msg;
  | 
  | 		try {
  | 			System.out.println("Incoming message: " + tm.getText());
  | 		} catch (Exception e) {
  | 			e.printStackTrace();
  | 		}
  | 	}
  | 
  | 	private void initializeListener() throws JMSException, NamingException {
  | 
  | 		Properties props = new Properties();
  | 		props.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
  | 		props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
  | 		props.setProperty("java.naming.provider.url", url_);
  |   
  | 		Context context = new InitialContext(props);
  | 		System.out.println("performing lookup...");
  |    
  | 		Object tmp = context.lookup("MyExampleConnectionFactory");
  | 		System.out.println("lookup completed, making topic");
  | 
  | 		TopicConnectionFactory tcf = (TopicConnectionFactory) tmp;
  | 		conn = tcf.createTopicConnection();
  | 		topic = (Topic) context.lookup(name_);
  | 
  | 		session = conn.createTopicSession(false, TopicSession.AUTO_ACKNOWLEDGE);
  | 		conn.start(); 
  | 
  | 		TopicSubscriber recv = session.createSubscriber(topic);
  |  
  | 		recv.setMessageListener(this);
  | 	}
  | 
  | 
  | 	public void disconnect() throws JMSException {
  | 		if(conn != null) {
  | 			conn.stop();
  | 		}
  | 
  | 		if(session != null) {
  | 			session.close();
  | 		}
  | 
  | 		if(conn != null) {
  | 			conn.close();
  | 		}
  | 	}
  |  
  | 	public static void main(String args[]) {
  | 
  | 		System.out.println("Starting JMS Example Listener");
  | 		System.out.println("Program will be active for 1 minute.");
  | 
  | 		//change these values to your situtation:
  | 		Listener listener = new Listener("localhost:1099", "topic/myTopic");
  | 
  | 
  | 		//leave it open for 2 minutes:
  | 		try {
  | 			Thread.sleep(97000);
  | 		} catch(Exception e) {
  | 			System.out.println("Error sleeping: " + e);
  | 			e.printStackTrace();
  | 		}
  | 
  | 		try {
  | 			System.out.println("Listener before Diss");
  | 			listener.disconnect();
  | 		} catch(Exception e) {
  | 			System.out.println("Error terminating listener JMS objects: " + e);
  | 			e.printStackTrace();
  | 		}
  | 
  | 		System.out.println("Done listening");
  | 	}
  | }

-------------


I started server as: run -c <my_config_name>

I am getting fallowing error when i placed  message_listener_service.sar  in - C:\myjboss-4.2.2\jboss-4.2.2.GA\server\messaging\deploy


17:55:17,015 ERROR [MainDeployer] Could not create deployment: file:/C:/myjboss-
  | 4.2.2/jboss-4.2.2.GA/server/messaging/deploy/message_listener_service.sar
  | org.jboss.deployment.DeploymentException: src.service.Listener.<init>(); - neste
  | d throwable: (java.lang.NoSuchMethodException: src.service.Listener.<init>())
  |         at org.jboss.system.ServiceConfigurator.install(ServiceConfigurator.java
  | :196)
  |         at org.jboss.system.ServiceController.install(ServiceController.java:226
  | )
  |         at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
  | sorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
  | er.java:155)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
  | java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  |         at $Proxy4.install(Unknown Source)
  |         at org.jboss.deployment.SARDeployer.create(SARDeployer.java:249)
  |         at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
  |         at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
  | sorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
  | er.java:155)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  |         at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractIntercept
  | or.java:133)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelM
  | BeanOperationInterceptor.java:142)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.
  | java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  |         at $Proxy9.deploy(Unknown Source)
  |         at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymen
  | tScanner.java:421)
  |         at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentS
  | canner.java:634)
  |         at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.
  | doScan(AbstractDeploymentScanner.java:263)
  |         at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.
  | loop(AbstractDeploymentScanner.java:274)
  |         at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.
  | run(AbstractDeploymentScanner.java:225)
  | Caused by: java.lang.NoSuchMethodException: src.service.Listener.<init>()
  |         at java.lang.Class.getConstructor0(Class.java:2678)
  |         at java.lang.Class.getConstructor(Class.java:1629)
  |         at org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:
  | 1232)
  |         at org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:
  | 286)
  |         at org.jboss.mx.server.MBeanServerImpl.createMBean(MBeanServerImpl.java:
  | 344)
  |         at org.jboss.system.ServiceCreator.install(ServiceCreator.java:157)
  |         at org.jboss.system.ServiceConfigurator.internalInstall(ServiceConfigura
  | tor.java:451)
  |         at org.jboss.system.ServiceConfigurator.install(ServiceConfigurator.java
  | :171)
  |         ... 33 more


I tried in google also, it is urgent, please help me , I have to add any jar files, need to change any .xml files  (or)  I have to change my listener ? 




View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4147835#4147835

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4147835



More information about the jboss-user mailing list