在Chrome浏览器中,我保存了用户名和密码.
现在,如果我导航到其他形式并且它包含其他一些东西的用户名和密码,那么我保存的那个是自动填充的.
我怎么能阻止这个?
我的应用程序在tomcat 7.0.47上运行struts 1.1.每当我请求这样的jsp时:
http://localhost:8080/myTestPage.jsp?lang=fr
Run Code Online (Sandbox Code Playgroud)
值lang = fr自动存储在cookie中.即使jsp与配置中的动作无关,也只包含"eclipse jsp的模板代码".
这是一个安全问题,因为没有关于此参数的控制(您可以注入JS).
如何或为何存储此参数?此行为仅适用于lang参数.
当我<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>用于我的struts 1.3.10项目时,它抛出以下异常:
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:445)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:117)
org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:311)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:152)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:410)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1427)
org.apache.jasper.compiler.Parser.parse(Parser.java:138)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:242)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:198)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:373)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1083)
org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:295)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:396)
org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:347)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
Run Code Online (Sandbox Code Playgroud)
然后,当我改变它
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
Run Code Online (Sandbox Code Playgroud)
它工作正常.我想知道这两者之间的区别是什么,以及当我尝试使用它时抛出异常的原因<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>.顺便说一句,我使用的是服务器apache-tomcat-7.0.42.请帮我.
我正在研究一些使用Struts html标签而不是标准html标签的传统Struts 1.x应用程序.我试图在不进行功能更改的情况下实现UI的现代化.
例如:输入字段是 <html:text property="someProperty" styleClass="someCssStyle">
代替 <input type="text" class="someCssStyle">
如果我改变,<html:text>以<input type="text">财产的结合断裂即输入字段中的值不会传递到代码中.
如果我尝试应用bootstrap样式<html:text>,它不起作用.
如何将Bootstrap样式应用于旧的struts html标记?
我有一个jsp作为我的视图,它显示一个表单,用于添加新用户/更新用户(如果选择了一个).如果选择了用户,我无法弄清楚如何预填充表单.我阅读了使用2个动作的解决方案,使用相同的形式,其中一个用于填充字段,然后用于提交数据.但是,这对我不起作用,因为我在加载jsp时没有调用我的动作(在表单的action属性中定义的那个)(无法解释这个,菜单和页面都是用xml定义的)文件).我不明白如何在我的jsp中指定第二个动作,以及如何确保在第一次加载jsp时调用该动作.如果可能的话,我更喜欢不涉及AJAX的解决方案.谢谢.
我计划使用Struts 1代码库迁移到Struts 2.我没有得到任何好的资源来继续这次迁移.你能帮忙解决这个问题吗?
我在 Websphere 8 中使用 Struts 1.3.10。这与最近发现的Struts 1 和 2 框架中的类加载器漏洞有关。我试图实施一个由 Apache 组织识别为正确的修复程序。这是我在应用程序中应用的修复程序
我尝试通过提供带有“?class.classLoader.defaultAssertionStatus=true”或“class.classLoader.resource.dircontext.docBase=someText”之类的参数的url来测试修复程序,无论哪种情况,我的应用程序都允许使用所有此类url。我在 getParameters() 返回的 finalParameters 中看到了这些 url。我测试正确还是我在这里遗漏了什么?
谢谢。
下面是我的代码,一切正常,但fmt不好。
web.xml
<jsp-config>
<taglib>
<taglib-uri>/WEB-INF/tags/jstl-fmt.tld</taglib-uri>
<taglib-location>/WEB-INF/tags/fmt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tags/jstl-fmt-1_0.tld</taglib-uri>
<taglib-location>/WEB-INF/tags/fmt-1_0.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tags/jstl-fmt-1_0-rt.tld</taglib-uri>
<taglib-location>/WEB-INF/tags/fmt-1_0-rt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tags/jstl-c.tld</taglib-uri>
<taglib-location>/WEB-INF/tags/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tags/jstl-c-1_0.tld</taglib-uri>
<taglib-location>/WEB-INF/tags/c-1_0.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tags/jstl-c-1_0-rt.tld</taglib-uri>
<taglib-location>/WEB-INF/tags/c-1_0-rt.tld</taglib-location>
</taglib>
</jsp-config>
Run Code Online (Sandbox Code Playgroud)
Sample.jsp
<%@ taglib uri="/WEB-INF/tags/jstl-fmt.tld" prefix="fmt" %>
<%@ taglib uri="/WEB-INF/tags/jstl-c.tld" prefix="c" %>
<html:form action="/UserAction.do">
<fmt:message key="message.username"/>
<c:out value="Hello" />
</html:form>
Run Code Online (Sandbox Code Playgroud)
ApplicationResource.properties
message.username=Username
Run Code Online (Sandbox Code Playgroud)
标签目录
\projectName\web\WEB-INF\tags
Run Code Online (Sandbox Code Playgroud)
结果
Hello // from core
???message.username??? //the fmt:message.username not working
Run Code Online (Sandbox Code Playgroud)
谁能帮助我,为什么fmt无效?我尝试使用jstl创建3个或更多项目。所有的jstl都在工作,但只有fmt不能。