OpenEJB kullanarak basit bir web servis yazmaya çalışıyorum. TomEE projesinden örnek bir kodla (webapps/ejb-webservice) başladım:
http://www.apache.org/dyn/closer.cgi/openejb/4.0.0-beta-1/examples-4.0.0-beta-1-src.tar.gz
Hizmet sınıfı ek açıklamalar kullanır:
@Stateless
@WebService(portName = "CalculatorPort",
serviceName = "CalculatorWebService",
targetNamespace = "http://superbiz.org/wsdl")
public class Calculator {
public int sum(int add1, int add2) {
return add1 + add2;
}
public int multiply(int mul1, int mul2) {
return mul1 * mul2;
}
}
Her şey yolunda gidiyor. Savaşın sunucuya dağıtılması da sorun değil (TomEE 1.0.0-beta-1-webprofile kullanıyorum), ancak bu web servisine erişmeye çalışmak dahili bir OpenEJB yönteminden bir dizi NameNotFoundException tetikliyor:
2011-10-27 21:54:32,029 - ERROR - Error in safeBind method
javax.naming.NameNotFoundException: Name openejb is not bound in this Context
...
2011-10-27 21:54:32,031 - ERROR - Error in safeBind method
javax.naming.NameNotFoundException: Name TransactionManager is not bound in this Context
...
2011-10-27 21:54:32,033 - ERROR - Error in safeBind method
javax.naming.NameNotFoundException: Name TransactionSynchronizationRegistry is not bound in this Context
...
2011-10-27 21:54:32,034 - ERROR - Error in safeBind method
javax.naming.NameNotFoundException: Name ORB is not bound in this Context
...
2011-10-27 21:54:32,036 - ERROR - Error in safeBind method
javax.naming.NameNotFoundException: Name HandleDelegate is not bound in this Context
Benzer arama hatası olan bir yayın buldum:
http://openejb.979440.n4.nabble.com/EJB-2-1-OpenEJB-Tomcat tarihindesource-Name-openejb-is-not-bound-in-this-Context-td3331555 .html
ancak sorun, ad arama yönteminin kullanılmasıydı. Örnek kodda açık aramalar yok.
Birisi bu sorunun kaynağının ne olabileceğini söyleyebilir mi?