您好我在我的项目中使用struts2和hibernate。我需要为我的管理部分使用命名空间,以便我将名称空间用作companyAdmin
,并且我在名为companyAdmin
的Web文件夹中创建了一个文件夹,并且工作正常。但是当我从web文件夹中删除文件夹companyAdmin
时,struts在尝试访问命名空间时显示错误错误消息。是否有一个名称作为命名空间名称的文件夹是struts2中必须使用的命名空间。此外,我无法使用命名空间作为“管理员”,即使我已在名称为admin的Web文件夹中创建了一个文件夹。
答案 0 :(得分:0)
请注意,Struts2名称空间与Web应用程序中的文件夹/任何其他资源无关。
Struts2中的命名空间将操作配置细分为 逻辑模块 ,每个都有自己的标识前缀.Namespaces可以避免操作名称之间发生冲突。
这就是doc关于命名空间
的说法命名空间不是路径! 命名空间不像文件系统路径那样是分层的。有一个命名空间级别。例如,如果请求URL /barspace/myspace/bar.action,框架将首先查找namespace / barspace / myspace。如果/ barspace / myspace中不存在该操作,则搜索将立即回退到默认命名空间“”。框架不会将命名空间解析为一系列“文件夹”。在命名空间示例中,将选择默认命名空间中的小节操作。
我建议你浏览一下Namespace的官方文档,了解它们是什么以及它们在S2中的工作方式