首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >javax.naming.NameNotFoundException - jndiName

javax.naming.NameNotFoundException - jndiName
EN

Stack Overflow用户
提问于 2016-10-30 05:07:20
回答 1查看 746关注 0票数 2

我想从码头换到小猫。我之所以获得NameNotFoundException,是因为tomcat没有找到jettyweb.xml中的jndiName并在applicationContext.xml中使用。

我的applicationContext.xml的一部分:

代码语言:javascript
运行
复制
    <bean id="clarityDataSource" class="org.springframework.jndi.JndiObjectFactoryBean" depends-on="i18nFactoryProvider">
    <property name="jndiName" value="java:comp/env/jdbc/clarityDS"/>
    </bean>

一部分jetty-web.xml

代码语言:javascript
运行
复制
    <New id="clarityds" class="org.eclipse.jetty.plus.jndi.Resource">
    <Arg>java:comp/env/jdbc/clarityDS</Arg>
    <Arg>
        <New class="oracle.jdbc.pool.OracleDataSource">
            <Set name="connectionCachingEnabled">true</Set>
            <Set name="dataSourceName">clarityDS</Set>
            <Set name="URL"><SystemProperty name="clarityDS.url"/></Set>
            <Set name="user"><SystemProperty name="clarityDS.username"/></Set>
            <Set name="password"><SystemProperty name="clarityDS.password"/></Set>
        </New>
    </Arg>
    </New>

我知道jettyweb.xml在所有文件之后加载。

有人能帮我吗?

  • 部署在WEB中的jetty-web.xml
  • 部署在WEB/classes/spring中的applicationContext.xmk
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-31 07:40:59

我在tomcat context.xml中添加了资源并解决了问题。

使用Maven、Jetty和Tomcat在嵌入式容器中运行java web应用程序

代码语言:javascript
运行
复制
       <Resource
           name="jdbc/clarityDS"
           auth="Container"
           type="javax.sql.DataSource"
           driverClassName="clarity.clarityDS.driverClassName"
           username="clarity.clarityDS.username"
           password="clarity.clarityDS.password"
           url="clarity.clarityDS.url"
           />

但如果可能的话,我喜欢在自定义路径中使用我的context.xml

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40326186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档