纠结N久了,求答案
com.framework.exception.DatabaseConnectionFailureException: DatabaseQuerier:makeConnection() - javax.naming.NamingException: Exception raised in FrameworkProperties::getInitializedContext--javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:715)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnection(FrameworkDatabaseQuerier.java:696)
at com.framework.dbimpl.FrameworkDatabaseQuerier.<init>(FrameworkDatabaseQuerier.java:36)
at com.framework.dbimpl.DatabaseQuerier.<init>(DatabaseQuerier.java:25)
at com.framework.common.FrameworkLogSwitchManager.getLogSwitch(FrameworkLogSwitchManager.java:37)
at com.framework.common.FrameworkActionServlet.startFramework(FrameworkActionServlet.java:116)
at com.framework.common.FrameworkActionServlet.init(FrameworkActionServlet.java:63)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4420)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4733)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1315)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1061)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Exception raised in FrameworkLogSwitchManager::getLogSwitch()--com.framework.exception.DatabaseConnectionFailureException: DatabaseQuerier:makeConnection() - javax.naming.NamingException: Exception raised in FrameworkProperties::getInitializedContext--javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]
success in initializing the application..................
************* start initConfig dict *****************
解析配置文件:file:/E:/hxc/apache-tomcat-6.0.32/webapps/SvnSunShine/WEB-INF/classes/dict.xml
解析完成...
************* dict data load begin *****************
com.framework.exception.DatabaseConnectionFailureException: DatabaseQuerier:makeConnection() - javax.naming.NamingException: Exception raised in FrameworkProperties::getInitializedContext--javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:715)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnectionHelper(FrameworkDatabaseQuerier.java:713)
at com.framework.dbimpl.FrameworkDatabaseQuerier.getSafeConnection(FrameworkDatabaseQuerier.java:696)
at com.framework.dbimpl.FrameworkDatabaseQuerier.<init>(FrameworkDatabaseQuerier.java:36)
at com.framework.dbimpl.DatabaseQuerier.<init>(DatabaseQuerier.java:25)
at com.teip.common.dao.BaseDAO.queryBySQL(BaseDAO.java:149)
at com.teip.common.dao.BaseDAO.find(BaseDAO.java:34)
at com.teip.common.dao.BaseDAO.find(BaseDAO.java:24)
at com.teip.common.dict.init.DictAccessDB.initConfig(DictAccessDB.java:63)
at com.teip.common.dict.init.DictAccessDB.<init>(DictAccessDB.java:24)
at com.teip.common.dict.init.DictAccessDB.getInstance(DictAccessDB.java:36)
at com.teip.common.dict.init.DictAccess.<init>(DictAccess.java:18)
at com.teip.common.dict.init.DictAccess.getInstance(DictAccess.java:22)
at com.teip.common.dict.init.DictAccessServlet.init(DictAccessServlet.java:18)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1173)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4420)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4733)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1315)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1061)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

解决方案 »

  1.   

    Exception raised in FrameworkProperties::getInitializedContext--javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]你的weblogic 的jndi配置有问题
      

  2.   

    Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]需要weblogic.jndi.WLInitialContextFactory 这个类
      

  3.   

    jndi应该没问题吧。 别的项目用的相同的jndi可以运行的。。
    weblogic.jndi.WLInitialContextFactory 这个类我引了 但是怎么用?
      

  4.   

    DatabaseQuerier 报错类的所有代码。。 
    public class DatabaseQuerier extends FrameworkDatabaseQuerier { public DatabaseQuerier() {
    } protected Long assignSafeLong(String value) {
    Long l = null;
    if (value != null)
    try {
    l = new Long(value);
    } catch (NumberFormatException numberformatexception) {
    }
    return l;
    } protected Double assignSafeDouble(String value) {
    Double d = null;
    if (value != null)
    try {
    d = new Double(value);
    } catch (NumberFormatException numberformatexception) {
    }
    return d;
    } protected Float assignSafeFloat(String value) {
    Float f = null;
    if (value != null)
    try {
    f = new Float(value);
    } catch (NumberFormatException numberformatexception) {
    }
    return f;
    } protected Short assignSafeShort(String value) {
    Short s = null;
    if (value != null)
    try {
    s = new Short(value);
    } catch (NumberFormatException numberformatexception) {
    }
    return s;
    } protected Integer assignSafeInteger(String value) {
    Integer i = null;
    if (value != null)
    try {
    i = new Integer(value);
    } catch (NumberFormatException numberformatexception) {
    }
    return i;
    } protected Byte assignSafeByte(String value) {
    Byte b = null;
    if (value != null)
    try {
    b = new Byte(value);
    } catch (NumberFormatException numberformatexception) {
    }
    return b;
    } protected Boolean assignSafeBoolean(String value) {
    Boolean b = new Boolean(false);
    if (value != null)
    try {
    b = new Boolean(value.equals("1")
    || value.equalsIgnoreCase("true")
    || value.equalsIgnoreCase("yes "));
    } catch (Exception exception) {
    }
    return b;
    } protected Calendar assignSafeDate(String date, String dateTimeFormat) {
    return Utility.formatToCalendar(date, dateTimeFormat);
    } public Collection createRecord(ResultSet rs) throws SQLException {
    Vector retColl = new Vector();
    String name = null;
    int index = 0;
    do {
    ResultSetMetaData rsMetaData = rs.getMetaData();
    Record record = new Record();
    for (int i = 1; i <= rsMetaData.getColumnCount(); i++) {
    Column column = new Column();
    String colName = rsMetaData.getColumnName(i);
    String type = rsMetaData.getColumnTypeName(i);
    String value = null;
    if (type.equalsIgnoreCase("CLOB"))
    value = getClob(rs, colName);
    else
    try {
    value = rs.getObject(i).toString();
    } catch (Exception exception) {
    }
    column.setName(colName);
    column.setValue(value);
    column.setDataType(type);
    record.addColumn(column);
    } retColl.add(record);
    } while (rs.next());
    return retColl;
    }
    }
      

  5.   

    这位同学,你贴这个类有什么用啊?报这个错是因为说没有找到这个类引起的,既然没有找到,肯定不会去读里面的内容。所以说,你贴了没有用的找不到这个类的原因有好几个,比如:该类不在classpath中;该类或许应该配置在某一个配置文件中,而你却写错的类的全名或是根本就没有配置,从而导致在读取配置文件的时候找不到等等