package servlet;
......
public class SampleServlet extends HttpServlet{
......
private void initBean()throws ServletException{
try{
initialContext = new InitialContext();
Object objref = initialContext.lookup("security-sample/UserManagement");//出错行
Object obj = PortableRemoteObject.narrow(objref,UserManagementHome.class);
home = (UserManagementHome)obj;
bean = home.create();
}
catch (CreateException e1) {
e1.printStackTrace();
throw new ServletException(e1.getMessage());
}
catch(NamingException ne){
ne.printStackTrace();
throw new ServletException(ne.getMessage());
}
catch (RemoteException e) {
e.printStackTrace();
}
}
......
}
这个对looup方法的引用抛出异常: javax.servlet.ServletException: security-sample not bound
at org.jnp.server.NamingServer.getBinding(NamingServer.java:581)
at org.jnp.server.NamingServer.getBinding(NamingServer.java:589)
at org.jnp.server.NamingServer.getObject(NamingServer.java:595)
at org.jnp.server.NamingServer.lookup(NamingServer.java:342)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:667)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:627)
at javax.naming.InitialContext.lookup(Unknown Source)
at servlet.SampleServlet.initBean(SampleServlet.java:91)
at servlet.SampleServlet.doGet(SampleServlet.java:37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
......
我想问,lookup的这个参数"security-sample/UserManagement"在哪里定义呢?
我的工程里几个配置文件如下:jboss.xml<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 3.0//EN" "http://www.jboss.org/j2ee/dtd/jboss_3_0.dtd">
<jboss>
<security-domain>java:/jaas/sample_web_client_security</security-domain>
<enterprise-beans>
<session>
<ejb-name>UserManagement</ejb-name>
<jndi-name>security-sample/UserManagement</jndi-name>
</session>
</enterprise-beans>
<resource-managers/>
</jboss>
jboss-web.xml<?xml version="1.0" encoding="ISO-8859-1"?>
<jboss-web>
<context-root>security-sample</context-root>
<security-domain>java:/jaas/sample_web_client_security</security-domain>
</jboss-web>
ejb-jar.xml部分session-bean的定义如下: <enterprise-beans>
<!-- Session Beans -->
<session>
<description><![CDATA[Session Bean for UserManagement]]></description>
<ejb-name>UserManagement</ejb-name>
<home>com.sample.ejb.UserManagementHome</home>
<remote>com.sample.ejb.UserManagement</remote>
<ejb-class>com.sample.ejb.UserManagementBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<security-role-ref>
<role-name>Member_admin</role-name>
<role-link>Member_admin</role-link>
</security-role-ref>
</session>
</enterprise-beans>
com.sample.ejb.UserManagementHome.javapackage com.sample.ejb;/**
* Home interface for UserManagement.
*/
public interface UserManagementHome
extends javax.ejb.EJBHome
{
public static final String COMP_NAME="java:comp/env/ejb/UserManagement";
public static final String JNDI_NAME="security-sample/UserManagement"; public UserManagement create()
throws javax.ejb.CreateException,java.rmi.RemoteException;}
解决方案 »
- struts+spring+ibatis框架搭建
- 求教:取得表单内容为 空字符串 的原因
- 从porperties配置文件中取出的汉字是乱码怎么解决
- 系统运行时,发现未登录,提示登录,登录后参数传递问题
- org.apache.commons.net.ftp.FTPClient 上传的问题。急!!!
- 如何用JavaScript 向table中插入图片,
- 各位前辈,大家帮忙给看看,我的简历还有什么地方写的不好,欢迎大家批评指正。。。
- 菜鸟提问:一个标准的c/s系统,如果转成java开发的话,用什么结构比较好,请各位大侠赐教。。。。。。多谢。。。
- 当类名跟包名称一样时,怎么处理?
- 可不可以在java的应用程序里,点一个按钮即链接打开一个网页?如一个按钮,点击,即打开ie,网址http://www.csdn.net?
- 实现一个方法void print
- 谁能告诉我这个问题怎么解决
我在JBoss的控制台看了一下JNDIView,好像没有发布成功。但是完全相同的代码,在JBoss5.0中就能成功发布并访问。
这是相关信息:java:comp namespace of the JBossLDAP.war application:
+- UserTransaction[link -> UserTransaction] (class: javax.naming.LinkRef)
+- env (class: org.jnp.interfaces.NamingContext)
| +- security (class: org.jnp.interfaces.NamingContext)
| | +- realmMapping[link -> java:/jaas/sample_web_client_security] (class: javax.naming.LinkRef)
| | +- subject[link -> java:/jaas/sample_web_client_security/subject] (class: javax.naming.LinkRef)
| | +- securityMgr[link -> java:/jaas/sample_web_client_security] (class: javax.naming.LinkRef)
| | +- security-domain[link -> java:/jaas/sample_web_client_security] (class: javax.naming.LinkRef)
java: Namespace
+- ClusteredXAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- jaas (class: javax.naming.Context)
| +- HsqlDbRealm (class: org.jboss.security.plugins.SecurityDomainContext)
| +- messaging (class: org.jboss.security.plugins.SecurityDomainContext)
| +- jmx-console (class: org.jboss.security.plugins.SecurityDomainContext)
| +- JmsXARealm (class: org.jboss.security.plugins.SecurityDomainContext)
+- TransactionPropagationContextImporter (class: com.arjuna.ats.internal.jbossatx.jta.PropagationContextManager)
+- JmsXA (class: org.jboss.resource.adapter.jms.JmsConnectionFactoryImpl)
+- comp.ejb3 (class: javax.naming.Context)
| NonContext: null
+- DefaultDS (class: org.jboss.resource.adapter.jdbc.WrapperDataSource)
+- StdJMSPool (class: org.jboss.jms.asf.StdServerSessionPoolFactory)
+- TransactionManager (class: com.arjuna.ats.jbossatx.jta.TransactionManagerDelegate)
+- ClusteredConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- TransactionPropagationContextExporter (class: com.arjuna.ats.internal.jbossatx.jta.PropagationContextManager)
+- ConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- DefaultJMSProvider (class: org.jboss.jms.jndi.JNDIProviderAdapter)
+- XAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- Mail (class: javax.mail.Session)
+- comp.original (class: javax.namingMain.Context)
+- timedCacheFactory (class: javax.naming.Context)
Failed to lookup: timedCacheFactory, errmsg=org.jboss.util.TimedCachePolicy
+- SecurityProxyFactory (class: org.jboss.security.SubjectSecurityProxyFactory)
+- comp (class: javax.naming.Context)
Global JNDI Namespace
+- ClusteredConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- XAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- UserTransactionSessionFactory (proxy: $Proxy15 implements interface org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory)
+- UUIDKeyGeneratorFactory (class: org.jboss.ejb.plugins.keygenerator.uuid.UUIDKeyGeneratorFactory)
+- console (class: org.jnp.interfaces.NamingContext)
| +- PluginManager (proxy: $Proxy49 implements interface org.jboss.console.manager.PluginManagerMBean)
+- topic (class: org.jnp.interfaces.NamingContext)
| +- testDurableTopic (class: org.jboss.jms.destination.JBossTopic)
| +- TopicWithOwnRedeliveryDelay (class: org.jboss.jms.destination.JBossTopic)
| +- testTopic (class: org.jboss.jms.destination.JBossTopic)
| +- testDistributedTopic (class: org.jboss.jms.destination.JBossTopic)
| +- TopicWithOwnDLQAndExpiryQueue (class: org.jboss.jms.destination.JBossTopic)
| +- securedTopic (class: org.jboss.jms.destination.JBossTopic)
+- queue (class: org.jnp.interfaces.NamingContext)
| +- D (class: org.jboss.jms.destination.JBossQueue)
| +- C (class: org.jboss.jms.destination.JBossQueue)
| +- B (class: org.jboss.jms.destination.JBossQueue)
| +- A (class: org.jboss.jms.destination.JBossQueue)
| +- testQueue (class: org.jboss.jms.destination.JBossQueue)
| +- QueueWithOwnDLQAndExpiryQueue (class: org.jboss.jms.destination.JBossQueue)
| +- PrivateDLQ (class: org.jboss.jms.destination.JBossQueue)
| +- ex (class: org.jboss.jms.destination.JBossQueue)
| +- PrivateExpiryQueue (class: org.jboss.jms.destination.JBossQueue)
| +- testDistributedQueue (class: org.jboss.jms.destination.JBossQueue)
| +- DLQ (class: org.jboss.jms.destination.JBossQueue)
| +- QueueWithOwnRedeliveryDelay (class: org.jboss.jms.destination.JBossQueue)
| +- ExpiryQueue (class: org.jboss.jms.destination.JBossQueue)
+- ConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
+- UserTransaction (class: org.jboss.tm.usertx.client.ClientUserTransaction)
+- jmx (class: org.jnp.interfaces.NamingContext)
| +- invoker (class: org.jnp.interfaces.NamingContext)
| | +- RMIAdaptor (proxy: $Proxy48 implements interface org.jboss.jmx.adaptor.rmi.RMIAdaptor,interface org.jboss.jmx.adaptor.rmi.RMIAdaptorExt)
| +- rmi (class: org.jnp.interfaces.NamingContext)
| | +- RMIAdaptor[link -> jmx/invoker/RMIAdaptor] (class: javax.naming.LinkRef)
+- HiLoKeyGeneratorFactory (class: org.jboss.ejb.plugins.keygenerator.hilo.HiLoKeyGeneratorFactory)
+- ClusteredXAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)