当前位置:  技术问答>博客 iis7站长之家

在sessionbean链接oracle的问题

    来源: 互联网  发布时间:2017-05-03

    本文导语:  初学ejb,在sessionbean里测试数据库的链接 HelloBean.java的源码如下: package net.eschool.test; import javax.ejb.*; import java.util.*; import java.sql.*; import javax.sql.DataSource; import javax.rmi.*; import javax.naming.*; public class HelloBean imple...

初学ejb,在sessionbean里测试数据库的链接
HelloBean.java的源码如下:

package net.eschool.test;

import javax.ejb.*;
import java.util.*;
import java.sql.*;
import javax.sql.DataSource;
import javax.rmi.*;
import javax.naming.*;

public class HelloBean implements SessionBean {
  SessionContext sessionContext;
  public void ejbCreate() throws CreateException {
    /**@todo Complete this method*/
  }
  public void ejbRemove() {
    /**@todo Complete this method*/
  }
  public void ejbActivate() {
    /**@todo Complete this method*/
  }
  public void ejbPassivate() {
    /**@todo Complete this method*/
  }
  public void setSessionContext(SessionContext sessionContext) {
    this.sessionContext = sessionContext;
  }
  public String SayHello()
      throws NamingException, SQLException
  {

    InitialContext ctx = new InitialContext();
    DataSource ds = (DataSource) ctx.lookup("java:/OracleDS");     Connection conn = ds.getConnection();

    conn.close();
    return new String("Hello World");
  }
}

编译打包后在jboss3部署,后台日志无误,在jsp里调用该ejb错误如下:
java.rmi.UnmarshalException: Error unmarshaling return; nested exception
is: 
java.lang.ClassNotFoundException: org.jboss.resource.ResourceException (no security manager: RMI class loader disabled)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:217)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:138)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:108)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:77)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:80)
at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:111)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:76)
at $Proxy1.SayHello(Unknown Source)
at _school._test__jsp._jspService(/school/test.jsp:43)
at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
at com.caucho.jsp.Page.subservice(Page.java:485)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:182)
at com.caucho.server.http.Invocation.service(Invocation.java:312)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:221)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:163)
at com.caucho.server.TcpConnection.run(TcpConnection.java:137)
at java.lang.Thread.run(Thread.java:536)
Caused by: java.lang.ClassNotFoundException: org.jboss.resource.ResourceException
(no security manager: RMI class loader disabled)
at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:368)
at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:159)
at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:629)
at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:257)
at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:200)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1503)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1425)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1616)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1264)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1830)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1756)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1636)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1264)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:322)
at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:215)
... 19 more


这是怎么回事?

|
你把
  InitialContext ctx = new InitialContext();
    DataSource ds = (DataSource) ctx.lookup("java:/OracleDS");     
换成
  javax.naming.Context jndiContext;
   jndiContext = new InitialContext();
   DataSource ds = (DataSource)jndiContext.lookup("java:/OracleDS");
试试

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • stateful的sessionBean和stateless的sessionBean有何区别
  • 关于另写一个SessionBean对用SessionBean封装的EntityBean的EJB的访问,急
  • 初写EJB的SessionBean,抱错,请帮忙看看。谢谢
  • 有关ejb的stateful sessionbean的问题
  • sessionbean调用entitybean的时候还需要像Client一样远程调用对象吗??
  • SessionBean在事务里不会超时的吗?
  • 关于SessionBean----50分
  • 关于有状态sessionBean的客户端调用
  • 谁能提供jb下做sessionbean调用entitybean的最简单的例子!
  • 简单的stateless sessionbean为何报如下的错误!!!!
  • 如何用EJB的SessionBean直接连接数据库?请高手指点。
  • 谁能提供给我一个sessionbean+entitybean的例子,jb做的,重分答谢
  • 谁能说说用jbuilder5开发的Ejb企业组件过程(包括Sessionbean和实体Bean)来者有分,分不够可以加
  • jsp调javabean调sessionBean调entityBean的问题,哪位高人指点一下,小妹这厢先谢过了!
  • 简单问题:在javascript或者html中如何调用sessionbean的某个方法?
  • 关于EJB的问题:当我写完我的接口、sessionbean、client以后怎么在j2ee下deploy?有这方面的资料吗?
  • wls6.1+jb5做了一个SessionBean,我知问题出在Temp路径的空格上,我已改了,但还是出错。我在enterprise Setup中把Use external compiler去掉又可以,但这样不能更新Jar.求助!!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3