2013-10-12 27 views
0

我知道所有的javascript文件都不是由服务器编译的,因为它只是直接提供服务。在javascript .js文件中访问struts2 java静态变量

但是,在我的后端,大多数变量被组织为静态的最终变量,所以当事情发生变化时,可以在一个地方完全改变。

目前我没有办法保持JavaScript和后端操作类变量之间的协调。像在线唯一的建议就是在jsp文件中创建javascript。有没有其他办法呢?

回答

0

您可以从JSP动态创建您的JavaScript文件。

e.g:在您的HTML或主JSP文件有以下

dyanmicJavascript.action会打电话给你的动作类,然后将返回一个jsp。 jsp将只有javascript代码(无HTML STUFF)。所以你的jsp看起来像。

//标签库的东西+其他jsp的具体东西 //普通的JavaScript代码如下 var globalVariable = 10; VAR dynamicVariables =

0

替代从jsp文件

在JSP设置的JavaScript变量,然后在javascript使用它(的.js)创建JS文件

对于例如

的index.jsp

<html> 
<head> 
    <script> 
     var contextPath="${pageContext.request.contextPath}"; 
     var otherStaticVariable="<s:property value="@[email protected]"/>"; 
    </script> 
    <script src="js/other.js"></script> 
</head> 
//Rest of the page 
</html> 

现在other.js可以直接引用的contextPath & otherStaticVariable内它的代码。

我在我的一些项目中使用了类似的代码。