gpt4 book ai didi

java - 包含jsps编译错误

转载 作者:行者123 更新时间:2023-12-01 15:55:27 25 4
gpt4 key购买 nike

有一个关于包含 jsp 头文件(使用 appengine)的正确方法的快速问题。我有一个htmlinclude.jsp 只包含头部

这是头文件

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="/styles.css" />
<title><%=title%></title>
</head>
<body>

其他jsp文件包含此头文件如下

<% String title="page title" ;%>
<%@ include file="htmlinclude.jsp" %>'

尝试部署到 appengine 时出现错误 -

SEVERE: Error compiling file: htmlinclude_jsp.java     
[javac] Compiling 1 source file
[javac] C:\htmlinclude_jsp.java:46: cannot find symbol
[javac] symbol : variable title
[javac] location: class org.apache.jsp.htmlinclude_jsp
[javac] out.print(title);
[javac] ^
[javac] 1 error

在本地计算机上运行它时,我没有任何问题...是否应该设置一个标志,以便不编译 htmlinclude.jsp?

最佳答案

我从来没有这样做过,但理论上你需要将其声明为全局变量而不是局部变量。您可以使用 <%! %> 来做到这一点表达。

<%! String title = "page title"; %>

但是我猜你依赖于 JSP 编译器/解析器,无论它是否接受它。

<小时/>

无论如何,这不是“正确的方式”。使用标签库和 EL。

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="/styles.css" />
<title>${param.title}</title>
</head>
<body>

<jsp:include page="htmlinclude.jsp">
<jsp:param name="title" value="page title" />
</jsp:include>

关于java - 包含jsps编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5158552/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com