Java 我想读取tomcat context.xml的参数
我想获取context.xml中的companyName值 在编写了下面提到的代码之后,我得到了Java 我想读取tomcat context.xml的参数,java,tomcat,Java,Tomcat,我想获取context.xml中的companyName值 在编写了下面提到的代码之后,我得到了null值 请帮助我从context.xml获取值。您甚至可以从context.xml 注意:不要说在web.xml InitialContext context = new InitialContext(); Context xmlNode = (Context) context.lookup("java:comp/env"); String companyName = (String) xmlNo
null
值
请帮助我从context.xml
获取值。您甚至可以从context.xml
注意:不要说在web.xml
InitialContext context = new InitialContext();
Context xmlNode = (Context) context.lookup("java:comp/env");
String companyName = (String) xmlNode.lookup("companyName");
Context.xml(Tomcat 7)
WEB-INF/WEB.xml
JSP(index.JSP)
在此处插入标题
输出
在实施下面给出的解决方案后更新
例外情况来了
您不能以这种方式加载,因为
context.xml
是JNDI资源。请尝试以下方法:
Tomcat(context.xml)
Java端
弹簧侧
HomeController.java
@Controller
@RequestMapping("/")
public class HomeController {
@Autowired
private ServletContext servletContext;
@RequestMapping(method=RequestMethod.GET)
public ModelAndView index(ModelAndView mav) throws Exception {
String companyName = servletContext.getInitParameter("companyName");
mav.setViewName("home/index");
mav.addObject("companyName", companyName);
return mav;
}
public void setServletContext(ServletContext servletContext) {
this.servletContext = servletContext;
}
}
视图侧
index.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
</head>
<body>
<c:out value="${companyName}"/>
</body>
</html>
家
以上例子在我这方面已经证明是成功的。我的脚本可以在运行时从context.xml
文件中读取,如图所示
对我来说比参数更有效,因为后者是
javax.naming.NameNotFoundException:名称[companyName]在此上下文中未绑定。无法找到[companyName]。
尝试使用字符串companyName=(字符串)xmlNode.lookup(“companyName”)获取值时代码>您试图再次获取哪个值?还有什么不起作用?尝试创建一个我无法在tomcat 8上使用完全相同的代码复制的参数。在tomcat中有一个context.xml,其中我有一个参数companyName,带有一些值。在jsp中,我需要该值,但我没有得到正确的值,我得到的值为null,请使用tomcat 7Posible duplicate:javax.servlet.ServletException:javax.naming.NameNotFoundException:Name[companyName]在此上下文中未绑定。找不到[companyName]。org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:912)。。。。。。有关更多信息,请参阅上面的上传图片这是SpringMVC,我想用简单的web应用程序在jsp中使用scriplets。如果你能帮忙的话。谢谢你犯了个错误。这不是“而是”!!如果我们指定“非常感谢您的回答,这对我帮助很大!
和
元素之间有什么区别?在Tomcat 8中,环境似乎可以工作,但参数对我来说不起作用
@Controller
@RequestMapping("/")
public class HomeController {
@Autowired
private ServletContext servletContext;
@RequestMapping(method=RequestMethod.GET)
public ModelAndView index(ModelAndView mav) throws Exception {
String companyName = servletContext.getInitParameter("companyName");
mav.setViewName("home/index");
mav.addObject("companyName", companyName);
return mav;
}
public void setServletContext(ServletContext servletContext) {
this.servletContext = servletContext;
}
}
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
</head>
<body>
<c:out value="${companyName}"/>
</body>
</html>
<Environment name="companyName" value="My Company, Incorporated"
type="java.lang.String" override="false"/>