Khi tôi chạy một ứng dụng liên quan đến JMS, tôi đang gặp phải lỗi ngoại lệ sau.Ngoại lệ: Cần chỉ định tên lớp trong thuộc tính môi trường hoặc hệ thống: java.naming.factory.initial
javax.naming.NoInitialContextException: Cần phải xác định tên lớp trong môi trường hoặc hệ thống tài sản, hoặc như là một tham số applet, hoặc trong một tập tin tài nguyên ứng dụng: java.naming.factory.initial
Chúng tôi đang sử dụng Sun Application Máy chủ 9.1
Bất kỳ ý tưởng nào chúng tôi bị thiếu?
Tôi đã cố gắng bổ sung thêm những điều sau đây nhưng kết quả vẫn như nhau
Properties env = new Properties();
env.put("java.naming.factory.initial","com.sun.jndi.cosnaming.CNCtxFactory");
Context ctx = new InitialContext(env);
Không hoàn toàn trùng lặp: chi tiết cụ thể về thuộc tính nào được đặt cho máy chủ ứng dụng này không được cung cấp ở đó. Ngay từ cái nhìn đầu tiên, người hỏi đang làm những gì được khuyến nghị và phù hợp với các tài liệu của Sun. – djna
Không hoàn toàn trùng lặp. Bạn cần phải đặt tập tin jndi.properties trong classpath. Để biết thêm thông tin, hãy sử dụng liên kết sau. https://cwiki.apache.org/confluence/display/qpid/How+to+Use+JNDI Chỉ định tên nhà máy và tên hàng đợi của bạn. Nên làm việc tốt. –