Struts 2插件转换--从Codebehind到公约插件
我会混淆 codebehind 注释为常规struts.xml文件. 如何在动作类中识别动作名称?因为如果写入方法public String list{} - 操作与JSPS product-list.jsp匹配,则将自动识别页面,而URL为product!list.什么是常规插件? 当前URL: http://localhost:7001/example/product!search -JSP名称product-search.jsp和ProductAction - 动作类. 请告诉我如何配置struts.xml文件上方等效的文件. 我尝试了以下尝试: product-search.jsp
4 2024-02-26
编程技术问答社区
注释中的Struts2标记拦截器
我使用的是支撑杆2.3.1与令牌截距. 这是我的Struts.xml /success.jsp /index.jsp 任何人都可以以相同的方式告诉注释. 解决方案 It looks to me like this is fairly clear in the documentation 在这里,您需要这样做: package com.example.actions; import com.opensymphony.xwork2.Action
4 2024-02-26
编程技术问答社区
Struts 2错误-com.opensymphony.xwork2.util.logging.commons.CommonsLogger错误
我正在尝试运行struts2示例应用程序.启动服务器时,我要低于错误和代码,该代码使用在这里.我在这里实现了相同的代码. struts2-convention-plugin-2.3.1.2.2.jar,asm.jar, Antlr-2.7.6.Jar,Commons-Fileupload-1.2.2.2.jar, commons-io-2.0.1.jar,commons-lang-2.5.jar, Commons-Logging-1.1.1.Jar,Commons-Logging-Api-1.1.jar, FreeMarker-2.3.18.Jar Javassist-3.11.0.Ga.Jar,Ognl-3.0.4.4.Jar,Jar, struts2-core-2.3.1.2.jar,xwork-core.2.3.1.2.jar Jun 29, 2013 6:58:18 PM com.opensymphony.xwork2.util.logging.commons
10 2024-02-26
编程技术问答社区
Struts 2公约插件定义多个父包
我正在使用Struts 2 Web应用程序,使用"约定"插件通过注释来配置所有内容.我正在使用一些动作课,我想使用多个父套件.我确实找到了在 apache的网站 - 但是这似乎被弃用了.它不起作用,将类型的不匹配扔回去:无法从String[]转换为String错误. @ParentPackage({"my-parent-package1, my-parent-package2"}) package com.mycompany.myapp.actions import org.apache.struts2.config.ParentPackage; 我正在使用Strut 2.2.1.是否可以通过注释授予操作多个父套件?他们会把它作为一个功能删除似乎很奇怪. 解决方案 您不能用注释来做到这一点,但是它仍然可以通过XML Config. Javadoc说 此注释允许操作修改他们的父包 正在使用.由于Xwork软件包是由"公约"插件创建的 通过该动作存在的Java软件包
10 2024-02-26
编程技术问答社区
struts.convention.result.path在Struts2中不起作用。
我当前的项目结构如下 WebContent WEB-INF View TestPage.jsp other JSP pages... 我的作业是将所有JSP页面放入文件夹Web-Inf中,并在项目中进行所有相对更改. WebContent WEB-INF View TestPage.jsp other JSP pages... 所以我必须在struts.xml中更新所有结果标签 /View/TestPage.jsp to /WEB_INF/View/TestPage.jsp 在网上搜索后,我找到了一个插件-Struts Convention插件来实现此目的,但它遵循其命名约定. 我可以覆盖Struts Conduntion插件配置(这不
4 2024-01-09
编程技术问答社区
在struts.xml中使用惯例插件
我正在使用要添加一个自定义拦截器,我需要在项目中具有struts.xml.但是,当我添加struts.xml时,它给我每页404个错误. 我尝试了此解决方案 . 解决方案 struts.xml配置文件应在源文件夹中,例如src或resources.当您构建应用程序时,汇编的输出定向WEB-INF/classes.您可以在部署或使用已经部署的Web应用程序启动服务器之前检查此文件. fyi,因此,使用惯例插件配置拦截器,请确保使用包含自定义拦截器的正确父套件.
14 2023-12-22
编程技术问答社区
在Struts 2中重复使用自定义表达式验证器
在Struts 2中,我们可以开发@CustomValidator,该>可以在应用程序广泛 中使用 @CustomValidator(type = "CustomerNumberValidator", fieldName = "customerNo") 用于验证比一个字段更多的我们使用@ExpressionValidator @ExpressionValidator(expression = "( (!''.equals(account.firstName) && (!''.equals(account.lastName) ) || (presonalAccount == false)", key = "validate.account.name") 如果表达式太复杂并且需要在上工作于的工作,那么我们使用OGNL来调用静态方法.静态方法将进行验证并返回boolean例如 @ExpressionValidator(expression = "@foo
2 2023-11-12
编程技术问答社区
Struts2公约插件在Tomcat 8.x上坏了-org.apache.struts2.convention.PackageBasedActionConfigBuilder.error 无法扫描命名的软件包
我使用的是Strut 2.3.16以及相同版本的"会议插件".该应用程序在tomcat 7.0.35上运行良好,但在tomcat 8.0.3.0上的以下例外失败. 11-May-2014 06:26:01.421 WARNING [http-nio-8084-exec-5] com.opensymphony.xwork2.util.finder.UrlSet.warn Cannot translate url to external form! java.lang.NullPointerException at com.opensymphony.xwork2.util.finder.UrlSet.load(UrlSet.java:93) at com.opensymphony.xwork2.util.finder.UrlSet.(UrlSet.java:83) at org.apache.struts2.convention.PackageBa
20 2023-10-24
编程技术问答社区
为什么我的拦截器产生的异常没有被<global-exception-mappings>捕获?
我有一个自定义拦截器,我从中例外; 运行该拦截器的操作由惯例插件管理; 拦截器提出的例外是在struts.xml中全局定义的. 结果:异常映射被忽略,我得到 Struts问题报告 Struts检测到一个未经治疗的例外: ... stackTraces java.lang.illegalargumentException:我的消息 我想我只是错过了一些愚蠢的东西...我们已经讨论过在一个类似的问题中,但仍然不清楚它是否可以使用这种方式: struts.xml
升级到Struts 2.3.15-Convention Plugin导致启动时崩溃
我正在将Struts2安装升级到2.3.15.添加struts2-convention-plugin-2.3.15.jar后,我的Web应用程序无法启动.例外列表的相关部分是; Caused by: Attribute "order" must be declared for element type "struts". - jar:file:/H:/apache-tomcat-7.0.20/wtpwebapps/FaultmateGenesis-Server/WEB-INF/lib/struts2-convention-plugin-2.3.15.jar!/struts-plugin.xml:29:20 at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:119) at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loa
12 2023-10-04
编程技术问答社区
xwork与xwork核心的冲突
我一直在试图将Strut 2与零配置,弹簧,休眠和Maven集成. 但是,我认为在集成中必须缺少某些东西,并且必须与Maven的Pom.xml的配置有关: org.apache.struts struts2-core 2.1.8.1 org.apache.struts struts2-spring-plugin 2.1.8.1
84 2023-10-04
编程技术问答社区
Struts 2和约定插件的全局结果
我想在我的应用程序中获得一些全球结果.在良好的旧XML配置中,它看起来像: index / 但是,当我使用"惯例插件"时,XML中的全局结果似乎被忽略了,那么我该如何使用"约定"插件实现它?我不想让我所有的动作课程扩展一个自定义类别定义的自定义类.我认为package-info.java应该是我的朋友,但我可以定义与结果有关的东西是@org.apache.struts2.convention.annotation.ResultPath. 只是要清楚:我不想避免struts.xml配置 - 我只想拥有一些正常工作的全球向前,因此在任何动作中发生错误
16 2023-10-04
编程技术问答社区
Struts 2公约插件和WEB-INF下的JSP文件
使用struts2章程插件时,插件会自动将hello-world.action请求转发到/WEB-INF/content/hello-world.jsp,即使未定义HelloWorld.java. 请参阅版本/2.1.x/docs/convention-plugin.html 为此. 另一方面,我们将JSP文件放在Web-Inf下,以避免对JSP文件的任何直接访问. 我认为约定插件的这种行为毁了JSP访问策略.任何人都可以通过简单地调用A,即时构建,动作来直接访问JSP. 我对吗?如果是,我们可以禁用此功能吗? 解决方案 不,您不太正确.如果页面不在WEB-INF下,这些页面将无法直接访问.惯例插件还可以根据约定的Action类创建基于XML的配置.因此,您只能访问这些操作返回的结果.公约插件将其配置放在文档中所述的XWork软件包和 this 答案中.因此,解决冲突,如果您不指定父套件,这是可能的.您还可以使用惯例注释来自定义生成的配置.默认情况下,"约
12 2023-10-04
编程技术问答社区
如何在不使用任何动作类的情况下使用Struts2约定
在struts2中,我们可以在不使用struts.xml中使用动作类的情况下定义动作: /error.jsp 在我的应用程序中,我正在使用struts2 convention.在这种情况下,如何避免编写动作课.我有很多场景,我只想在不使用任何业务逻辑的情况下进入页面. 我的结果路径不仅仅是JSP.我正在使用瓷砖.我使用的代码如下: @Action(value="homePage", results={@Result(name="success", location="homePage", type="tiles")}) 解决方案 您可以将JSP放置到WEB-INF/content此默认结果路径上.另外,您可以使用常量struts.convention.result.path更改此操作.会议插件从那里的所有JSP创建配置.因此,如果您的结果路径下的do-so
12 2023-10-04
编程技术问答社区
如何在Struts 2中使用注解来定义拦截器
我正在尝试使用struts2-convention-plugin,该>提供Java注释来定义Struts2组件. 到目前为止,Action s Action太好了,但是如何使用注释来定义拦截器? (我说的是@InterceptorRefs或@InterceptorRef). 这甚至可能吗?目前,我在struts.xml文件中配置了用注释和拦截器配置动作. 是否可以完全消除struts.xml文件并使用面向注释的配置? 解决方案 因此,如果您使用自定义拦截器,则不能消除struts.xml的需求.有关"公约插件使用"的参考和说明,请参见文档.
12 2023-10-04
编程技术问答社区
Struts 2惯例插件-上传超过2MB的文件
如果我尝试上传一个超过2 MB大小的错误ED文件. 我在apache网站上发现"有两个单独的文件尺寸限制.首先是struts.multipart.maxsize,它来自struts 2 default.properties file.properties文件.此设置存在出于安全原因而禁止恶意用户上传.非常大的文件以归档您的服务器磁盘空间.此设置默认为大约2兆字节,应调整为最大尺寸文件(2 gigs max),您将需要该框架接收" " 所以我发现可以通过在struts.xml文件中使用所需的最大限制添加标签来解决此问题. 我们使用的是struts2-Convention-Plugin,因此我们没有struts.xml.所以我不确定在哪里定义此最大文件大小... 请让我知道你们中有人遇到过. 感谢您的帮助. 解决方案 您可以在stru
10 2023-10-04
编程技术问答社区
启动错误:java.lang.IncompatibleClassChangeError: org/apache/struts2/convention/DefaultClassFinder$InfoBuildingVisitor
我有一个struts2应用程序,最初是基于XML的,但现在我第一次引入了基于注释的操作,并且该应用程序在启动时破裂. 给定以下操作映射,在应用程序的启动时,我得到了错误 java.lang.InstantiationError: com.opensymphony.xwork2.util.finder.ClassFinder at org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(PackageBasedActionConfigBuilder.java:390) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:347) at org.apache.struts2.co
38 2023-10-04
编程技术问答社区
如何将struts公约插件与struts-spring插件配置成带注解的Action类映射?
我正在尝试使用已经使用"会议"插件运行的Strut 2应用程序配置Spring插件,因此我使用注释.我正在使用Extjs进行表单提交,该表格最初运行良好,直到我引入了Spring插件,现在Ajax请求无法找到操作,并且在Firebug中没有显示任何响应. pom.xml org.apache.struts struts2-core ${struts2.version} org.apache.struts struts2-convention-plugin