tomcat上面项目运行正常,weblogic下面出现•There is no Action mapped for namespace [/] and acti

Link_增增 2014-08-27 11:34:22


Struts Problem Report

Struts has detected an unhandled exception:


Messages: •There is no Action mapped for namespace [/] and action name [adminAction] associated with context path [/lscms].




Stacktraces

There is no Action mapped for namespace [/] and action name [adminAction] associated with context path [/lscms]. - [unknown location]
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:501)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:119)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3684)
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2268)
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1446)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
weblogic.work.ExecuteThread.run(ExecuteThread.java:173)




You are seeing this page because development mode is enabled. Development mode, or devMode, enables extra debugging behaviors and reports to assist developers. To disable this mode, set:
struts.devMode=false

in your WEB-INF/classes/struts.properties file.
...全文
1225 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChanceZhao 2016-12-14
  • 打赏
  • 举报
回复
struts注解我不太熟 我记得应该是里面的方法要注解 你百度一下 我感觉你注解错地方了 希望对你有帮助
美琪与猫猫 2016-12-14
  • 打赏
  • 举报
回复
同遇到此问题,没有解决。在tomcat上面啥事没有,在weblogic(版本是12C)上部署就出这个错误了,com.opensymphony.xwork2.config.ConfigurationException: There is no Action mapped for namespace [/] and action name [pay] associated with context path [] ,但是我将web.xml同目录下的weblogic.xml文件删除后再部署就没有问题,weblogic.xml的作用是为实现服务器集群session共享的,不知道是不是这个配置文件的原因才出现这个问题的,但是确实有它就报错,没它就正常。QAQ
Link_增增 2015-01-21
  • 打赏
  • 举报
回复
,这个问题大家有没有遇到啊?
kivision 2014-09-08
  • 打赏
  • 举报
回复
http://blog.csdn.net/gl74gs48/article/details/7955533 楼主可以试下应该可以的,刚刚找到的!
kivision 2014-09-08
  • 打赏
  • 举报
回复
也碰到了和楼主一样的问题,到现在还没解决,求大神帮忙解决。
Link_增增 2014-09-02
  • 打赏
  • 举报
回复
这个问题没有人遇到吗?
Link_增增 2014-09-01
  • 打赏
  • 举报
回复
引用 14 楼 jumpheightway 的回复:
你weblogic是那个版本的
11g
jumpheightway 2014-09-01
  • 打赏
  • 举报
回复
你weblogic是那个版本的
Link_增增 2014-09-01
  • 打赏
  • 举报
回复
Link_增增 2014-08-30
  • 打赏
  • 举报
回复
引用 11 楼 huasuoworld 的回复:
你修改下注释

@Namespace("/lscms")
刚试过了,还是同样的问题。
huasuoworld 2014-08-30
  • 打赏
  • 举报
回复
你修改下注释

@Namespace("/lscms")
Link_增增 2014-08-30
  • 打赏
  • 举报
回复
求解决,不要让此贴沉了!!!
shiyonghu 2014-08-29
  • 打赏
  • 举报
回复
你是在eclipse上打的包吧
Link_增增 2014-08-29
  • 打赏
  • 举报
回复
引用 8 楼 shiyonghu 的回复:
你是在eclipse上打的包吧
不是 用命令打的包
Link_增增 2014-08-28
  • 打赏
  • 举报
回复
jsp代码如下:
<%@ page language="java" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>111</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<script type="text/javascript" src="./jslib/jquery-easyui-1.3.6/jquery.min.js"></script>
	<link rel="stylesheet" href="css/login.css" type="text/css"></link></head>
  
  <body>
    <div class="head">
    	<div class="logo"></div>

	</div>
	<div class="foot">
		<form  id="form" action="${pageContext.request.contextPath}/adminAction!login.action" method="Post">
                    <div class="login">
                        <table>
                            <tr>
                                <td>帐号: <input name="username" type="text" class="text_v" id="username" maxlength="20" />   </td>
                                <td>密码: <input class="text_v" name="password" type="password" id="password" />   </td>
                                <td>验证码:<img src=""></td>
                                <td><input class="text_v" name="code" style="width:50px;" type="text" id="code" /></td>
                            </tr>
                        </table>
                    </div>
                    <div class="login_sub">
                        <button type="submit"> 登录</button>      
                        <button type="button">重置</button>
                    </div>
		</form>  
	</div>
    
  </body>
</html>
Link_增增 2014-08-28
  • 打赏
  • 举报
回复
Action代码如下:
package com.lscms.action;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.springframework.beans.factory.annotation.Autowired;

import com.lscms.pageModel.Admin;
import com.lscms.pageModel.AdminGroup;
import com.lscms.pageModel.Json;
import com.lscms.service.AdminServiceI;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ModelDriven;
@Namespace("/")
@Action("adminAction")
@Results({  
		@Result(name="SUCCESS", location="index.jsp", type="redirect"),
		@Result(name="LOGOUT", location="login.jsp", type="redirect"),
		@Result(name="ADMINLIST", location="system/admin/adminList.jsp", type="redirect"),
		@Result(name="EDITADMIN", location="system/admin/editAdmin.jsp", type="redirect")
	}) 
public class AdminAction extends BaseAction  implements ModelDriven<Admin>{

	Admin admin = new Admin();
	AdminGroup adminGroup = new AdminGroup();

	//表单自动注入
	@Override
	public Admin getModel() {
		return admin;
	}
	
	AdminServiceI adminService;
	
	public AdminServiceI getAdminService() {
		return adminService;
	}

	@Autowired
	public void setAdminService(AdminServiceI adminService) {
		this.adminService = adminService;
	}

	public String adminList(){
		List<AdminGroup> list = adminService.adminGroup();
		ActionContext.getContext().getSession().put("adminGroup", list);
		return "ADMINLIST";
	}

	public void dataGrid(){
		super.writeJson(adminService.dataGrid(admin));
	}
	
	public void save(){
		Json j = new Json();
		try {
			adminService.save(admin);
			j.setSuccess(true);
			j.setMessage("添加成功!");
		} catch (Exception e) {
			j.setSuccess(false);
			j.setMessage(e.getMessage());
		}
		super.writeJson(j);
	}
	
	public String edit(){
		ActionContext context=ActionContext.getContext();
		HttpServletRequest request = (HttpServletRequest)context.get(ServletActionContext.HTTP_REQUEST);
		String id = request.getParameter("id");
		List<Admin> list = adminService.findById(id);
		ActionContext.getContext().getSession().put("adminList", list);
		return "EDITADMIN";
	}
	
	public void update(){
		Json j = new Json();
		try {
			adminService.update(admin);
			j.setSuccess(true);
			j.setMessage("更新成功!");
		} catch (Exception e) {
			j.setSuccess(false);
			j.setMessage(e.getMessage());
		}
		super.writeJson(j);
	}
	
	public String login(){
		Json j = new Json();
		Admin ad = adminService.login(admin);
		if (ad != null) {
			ActionContext.getContext().getSession().put("admin",admin);
			j.setSuccess(true);
			j.setMessage("登陆成功!");
		}else {
			j.setSuccess(false);
			j.setMessage("登陆失败,用户名或密码错误!");
		}
		//super.writeJson(j);
		return "SUCCESS";
	}
	
	public String logout(){
		
		return "LOGOUT";
	}
	
	public void remove(){
		Json j = new Json();
		try {
			adminService.remove(admin.getIds());
			j.setSuccess(true);
			j.setMessage("删除成功!");
		} catch (Exception e) {
			j.setSuccess(false);
			j.setMessage("删除失败!");
		}
		super.writeJson(j);
	}
}
Link_增增 2014-08-28
  • 打赏
  • 举报
回复
引用 4 楼 shiyonghu 的回复:
应该是路径问题,用debug模式试一下,你能不能访问到你的后台方法,访问不到的话首先检查路径吧,也有可能是页面上的问题。
tomcat下面系统运行正常,在weblogic下面就出现这个问题了,不知道是怎么回事?是不是注解问题呢?weblogic好像没有解析注解。
shiyonghu 2014-08-28
  • 打赏
  • 举报
回复
应该是路径问题,用debug模式试一下,你能不能访问到你的后台方法,访问不到的话首先检查路径吧,也有可能是页面上的问题。
Link_增增 2014-08-28
  • 打赏
  • 举报
回复
引用 6 楼 shiyonghu 的回复:
不会吧,注解与服务器没关系,你先把项目打包成war包,然后部署到weblogic上
恩 就是这样做的,向后台action发送请求的时候,就报这个错了
shiyonghu 2014-08-28
  • 打赏
  • 举报
回复
不会吧,注解与服务器没关系,你先把项目打包成war包,然后部署到weblogic上
加载更多回复(1)
程声明:该课程是教学使用,视频内涉及漏洞利用方法,请勿在互联网环境中使用;维护互联网安全,人人有责。实验所需环境:vmware;kali虚拟机一台;windows server一台;有docker环境的Linux虚拟机环境下载地址在购买课程后单独发送 【课程配套资源】1、Python脚本(Margin老师自研,不光能学漏洞,还能学Python,实在是划算)2、与Margin老师实时互动3、免费的CISP-PTE考试技巧指导(Margin老师与CISP-PTE的负责人很熟的,非常多的一手消息^o^)4、Margin老师的内部直播可以优先参加5、Margin老师的课程基于CISP-PTE的知识体系进一步扩展,使课程内容更贴近实战   【课程主要解决问题】1、CSRF、SSRF搞不清楚?2、SSRF原理是什么?危害大小?如何利用SSRF获取主机权限?如果使用Python提高挖洞效率?3、Gopher协议、Dict协议?完全没听过啊,没关系,看完课程后你门清。4、SSRF渗透Redis数据库,Redis客户端和服务器端怎么通信?通信报文是怎么样的?看这里就行。5、SSRF渗透Struts2总是失败?不知道如何编码?不知道如何使用Gopher协议?来这里。6、SSRF表面简单,实则有无数坑,通过视频提高学习效率吧。 【CISP-PTE介绍】1、CISP-PTE是进入网络安全行业的TOP1认证,能帮你梳理完整的网络安全知识体系2、有PTE证书在网络安全公司是免技术笔试的,怎么样?是不是很棒。3、Margin老师的课程基于CISP-PTE的知识体系进一步扩展,使课程内容更贴近实战本课程属于CISP-PTE渗透测试工程师认证体系的课程,但内容更加丰富。CISP-PTE是国内第一个以动手实操为主的网络安全认证,该注册考试是为了锻炼考生世界解决网络安全问题的能力,持续增强我国的网络安全水平和防御能力,促进国内网络防御能力的不断提高。考试内容从多个层面进行,考点和网络安全动态相结合,真实的反应出真实的网络环境中发现的各种问题。如果要考取CISP-PTE证书需要掌握以下内容:1、Web安全基础,注入漏洞、上传漏洞、跨站脚本漏洞、访问控制漏洞、会话管理漏洞哦等。2、中间件的安全知识,如:Apache,IIS,Tomcat,以及 JAVA 开发的中间件 Weblogic,Jboss, Websphere 等,且要了解中间件加固方法,在攻与防的能力上不断提升。3、操作系统安全,包含Windows和Linux操作系统,从账户管理、文件系统权限、日志审计等方面讲解,了解常见的漏洞方式和加固方法。4、数据库安全,包含MSSQL、MYSQL、ORACLE、REDIS数据,了解常用的数据库漏洞和题全方法,保证数据库的安全性。 【关于Margin老师】· Margin/教育系统网络安全保障人员认证首批讲师/高级讲师· 擅长CTF/Web安全/渗透测试 /系统安全· 3年研发/擅长Java/Python/某银行现金循环机业务系统开发者· 曾参与开发网络安全认证教材· 知乎专栏/CISP-PTE渗透测试工程师学习· 4年线下网络安全讲师/2000+线下学员/100000+线上学员

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧