问题标签 [struts2-interceptors]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 在struts中使用单个拦截器作为默认拦截器引用是否正确?
这是拦截器定义 my struts.xml
,但这可能不正确,因为 IDE 提示我错误Cannot resolve interceptor-stacklogin
at default-interceptor-ref
如果我忽略此错误以部署到服务器,则此拦截器仍然可以正常工作。
如果我定义一个拦截器栈,IDE就不会报错
以上两者都是部署后的工作。如果我使用单个拦截器作为默认拦截器是否正确?
如果正确,为什么IDE会提示错误?我可以解决错误吗?
如果不正确,为什么部署后会起作用?
java - Struts 如何创建动作 bean?
我使用 Struts2.x,并且我知道 Struts 根据请求在动作中创建声明的 bean 对象,以便它可用于动作。我一直在研究以了解 Struts 在内部使用哪些拦截器/类来创建 bean 对象。我试图了解内部用于创建 bean 对象的逻辑。它是PropertyUtils
用来填充 bean 的属性还是其他方式?任何阅读建议或指示都会有所帮助。
java - full-hibernate-plugin-for-struts2 阻塞线程?
进行线程转储后,我看到这个 sessionInjector 有这么多(arnd 1000)阻塞线程,这极大地影响了服务器性能。阻塞线程堆栈跟踪为:
如文档所述,这个休眠插件自动处理和关闭会话、事务。这些被阻塞的线程是什么?我正在使用 struts 2 拦截器和注入会话,如下所述:
java - struts2拦截器的问题
通过验证布尔变量是真还是假,我遇到了阻止用户访问任何jsp的拦截器的麻烦;该变量位于 bean (heyBean) 中,该 bean 预先在会话中使用操作方法设置(该操作实现会话感知)。如果为真,用户可以继续操作;如果没有,用户将被重定向到登录页面。显然,登录页面不能被这个拦截器保护。问题是,当我在登录前调用受保护的操作时,没有调用拦截器。
这是我的heyBean:
这是我的拦截器:
这是我的 struts.xml:
java - Struts 2 中的 validate() 方法如何得到结果“输入”?
在 Struts 2 中,"input"
当方法中的检查失败时返回validate()
。然后我映射<result name="input">
到struts.xml
适当的页面。
我只是想知道它是如何获得的"input"
,这是方法本身返回的String
时间?validate()
void
我想了解这个概念。
javascript - FileUploadInterceptor - 特殊字符
我希望你们都很好。
我正在寻找来自 struts2 的 FileUploadInterceptor 帮助。我正在使用一个应用程序,它正在通过uploadify 上传一个pdf 文件,然后它进入struts2 FileUploadInterceptor,然后它进入Action。
问题是最近我意识到,例如,如果文件名有一个“&”,拦截器拒绝文件,而不是将它发送到动作......因为我不能触摸拦截器也不能修改它,我来修改 Javascript 文件,在 .uploadify 和“onSelect”中,我添加了一个 if 子句,如下所示:
正如您在代码中看到的那样,在 var "patron" 中,我使用带有 "&" 的正则表达式,这是我确信它不起作用的特殊字符。但问题是我需要输入 FileUploadInterceptor 拒绝的所有特殊字符......我一直在查看拦截器文件以及 org.apache.commons.ognl,但我真的不明白也不能在代码中查找不允许的特殊字符。例如,当我的文件被文件名中的“&”拒绝时,我得到的错误如下:
好吧,现在我最大的问题是让所有特殊字符添加到我的 Javascript 文件中的 RegEx 中,我希望你能帮助我或至少给我任何想法。
谢谢 !!!
问候
java - 为什么我们不能通过 ServletActionContext 使用 execAndWait 拦截器?
我必须在 Struts2 中的选定操作上使用加载栏,并且正在使用ServletActionContext
,但正在获取NullPointerException
.
如果我execAndWait
从 xml 配置文件中删除拦截器,它工作正常。
有人建议我使用SessionAware
. 为什么这样 ?
有什么解决办法吗?
exception - 为什么我的拦截器引发的异常未被捕获?
我有一个自定义拦截器,我从中抛出异常;
运行 Interceptor 的 Action(s) 由 Convention 插件管理;
拦截器引发的异常在 struts.xml 中为 Action 正在运行的包全局定义。
结果:异常映射被忽略,我得到
Struts 问题报告
Struts 检测到一个未处理的异常:
堆栈跟踪
java.lang.IllegalArgumentException:我的消息
我想我只是错过了一些愚蠢的东西......我们已经在类似的问题中讨论过这个问题,但仍然不清楚它是否可以这样工作:
struts.xml
行动
拦截器
我还尝试在抽象 BaseAction 或物理实际 Action 本身中定义全局结果/全局异常映射,但它们也被忽略了。
关于添加/删除/更改什么以使其正常工作的任何想法?这不是深奥的东西,这是基本的:|
filter - Struts 2 拦截器中的 Log4j (SLF4J) MDC 上下文
我发现可以在通用过滤器中以线程安全的方式设置 Log4j (SL4J) MDC 上下文(代码来自使用 Mapped Diagnostic Context 添加用户信息到多用户应用程序中的日志条目)
我可以在 Struts 2 拦截器中执行相同的方法吗?!我想知道的是线程安全问题。
Struts 2拦截器和servlet过滤器不是线程安全的,MDC
实现也是线程安全的,所以如果上面的代码在过滤器中工作正常,理论上它在拦截器中必须是工作线程安全的。
任何意见 ?!
java - 用保存的 cookie 填写表格
我有一个动作类,可以像这样保存我的 cookie:
如果我提交表单,我可以在浏览器上看到已创建并保存的 cookie。当用户提交时,他们会被重定向到一个新页面,该页面包含他们刚刚创建的所有存储信息。
我希望用户能够返回提交页面并查看他们刚刚提交的表单中的所有信息。是否可以使用 Struts2 执行此操作,通过使用保存的 Cookie 并获取表单以填写旧数据?
这是我的表格: