मुझे अपने स्टैंडअलोन जेएमएस क्लाइंट में इंजेक्शन javax.jms.ConnectionFactory
नहीं मिल सकता है। मुझे नीचे दिए गए कोड में java.lang.NullPointerException
connectionFactory.createConnection()
पर मिलता है।जावाईई 6: एक स्टैंडअलोन जेएमएस क्लाइंट में जेएमएस संसाधन कैसे इंजेक्ट करें?
JmsClient.java
public class JmsClient {
@Resource(mappedName="jms/QueueConnectionFactory")
private static ConnectionFactory connectionFactory;
@Resource(mappedName="jms/ShippingRequestQueue")
private static Destination destination;
public static void main(String[] args) {
try {
Connection connection = connectionFactory.createConnection();
connection.start();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer producer = session.createProducer(destination);
ObjectMessage message = session.createObjectMessage();
ShippingRequestQueue shippingRequest = new ShippingRequestQueue(1, "107, Old Street");
message.setObject(shippingRequest);
producer.send(message);
session.close();
connection.close();
System.out.println("Shipping request message sent ..");
} catch (Throwable ex) {
ex.printStackTrace();
}
}
}
मैं ओपन MQ (MoM) पर इसी कनेक्शन फैक्टरी और गंतव्य संसाधन बनाया है Glassfish 3.1 व्यवस्थापक कंसोल का उपयोग।
क्या कोई मुझे समझने में मदद कर सकता है कि मुझे क्या याद आ रहा है?
'संसाधन 'काम नहीं करता है लेकिन जेएनडीआई नाम का उपयोग करके देख रहा है। \t 'संदर्भ jndiContext = नया InitialContext(); \t \t कनेक्शन फैक्टरी कनेक्शन फैक्टरी = (कनेक्शन फैक्टरी) jndiContext.lookup ("jms/QueueConnectionFactory"); \t कतार गंतव्य = (कतार) jndiContext.lookup ("jms/ShippingRequestQueue"); ' – skip
धन्यवाद, यह मेरे लिए काम करता है। – Puckl