ssh 初学 The requested resource (Servlet action is not available) is not available. 问题

热烈的红颜 2008-11-14 12:41:18
我 照着视频 做的
我 <action-mappings>
<action path="/user" name="userForm" attribute="userForm" type="org.ly.struts.action.UserAction"></action>
</action-mappings>
<controller>
<set-property property="processorClass" value="org.springframework.web.struts.DelegatingActionProxy"/>
</controller>
<message-resources parameter="org.ly.struts.ApplicationResources" />
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" />
</plug-in>
</struts-config>


<bean name="/user" class="org.ly.struts.action.UserAction"></bean>
但是 就是出现上面的情况
如果 我不把 struts交给spring管理的话 就正确.........
这个情况 我在网上 查了 还是 没有解决
大家 给点意见
...全文
753 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
seagull_009 2009-08-27
  • 打赏
  • 举报
回复
我把MyEclipse自带的commons-beanutils.jar和asm.jar都下了,去apache下了个commons-beanutils-1.8.0.jar.
也不成,后来去查日志.
提示:
[ERROR] 2009-08-27 15:17:35 Method: org.apache.catalina.core.ApplicationContext.log(ApplicationContext.java:678)
action: null
java.lang.ClassNotFoundException: org.springframework.web.struts.ContextLoaderPlugIn
fenglang1986 2009-03-13
  • 打赏
  • 举报
回复
补充一句,注意整合后包的加载顺序
fenglang1986 2009-03-13
  • 打赏
  • 举报
回复
我也遇到这样的问题,检查结果是MyEclipse中包的问题,建议:只用开发工具创建WEB项目,其他得支持不用 MyEclipse加载,而是手动创建配置文件和手动添加对应得包。
热烈的红颜 2008-11-16
  • 打赏
  • 举报
回复
HTTP Status 404 - Servlet action is not available

改了 还是一样的错误<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

<struts-config>
<data-sources />
<form-beans >
<form-bean name="userForm" type="org.ly.struts.form.UserForm" />

</form-beans>

<global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="userForm"
name="userForm"
path="/user"
scope="request"
/>

</action-mappings>

<controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor"> </controller>
<message-resources parameter="org.ly.struts.ApplicationResources" />
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" />
</plug-in>
</struts-config>
xiaojun0124 2008-11-15
  • 打赏
  • 举报
回复

<controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor"></controller>

我想应该是你那个value里面的问题吧。。。你把他改为org.springframework.web.struts.DelegatingRequestProcessor试一下了。。我每次都是这样做的
shengli_liao 2008-11-15
  • 打赏
  • 举报
回复
义务帮顶
yzsunlight 2008-11-15
  • 打赏
  • 举报
回复
楼主 什么也别说 先把你的错误 贴出来看看才知道哪里错了
yzsunlight 2008-11-15
  • 打赏
  • 举报
回复
<action-mappings >
<action
attribute="stuForm"
input="/form/stu.jsp"
name="stuForm"
path="/stu"
scope="request"
type="org.springframework.web.struts.DelegatingActionProxy" />


</action-mappings>

<message-resources parameter="com.accp.struts.ApplicationResources" />
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" />
</plug-in>

楼主你的struts配置文件 没有什么问题 现在把你才错误贴出来看看
热烈的红颜 2008-11-15
  • 打赏
  • 举报
回复
我刚刚和 一个正确的对了 我的配置文件没有问题啊

是不是 包加错了 或者是版本问题啊
zjnoall 2008-11-15
  • 打赏
  • 举报
回复
我也碰到这样的错误,但是最后我找到原因了,是我们写的CLASS文件出错了,而我们用的SSH结构,他不给我们报是什么错,你好好的看看你的CLASS接口那些文件,错误在那里产生的,相信我,不是配置的问题!
热烈的红颜 2008-11-15
  • 打赏
  • 举报
回复
谢谢 楼上各位大哥帮忙 但是我还是 找不到答案

我的QQ 278977862
那位 大哥 帮帮忙 小弟 对struts 和 hiberante ,spring只是 单个的了解 没有整合 所以 边学边忘 我想该整合起来学了

可以 才开始就遇到这个问题
我看网上的视频 但是 我还是不可以
我用的版本是 Eclipse 3.3+MYElipse 6.0
框架是
Struts 1.2 + hibernate 3.0 + spring 2.0

如果 可以 帮我 写一个 最简单的整合例子 我不胜感激

我的邮箱是: ganludong@sina.com
一个 自学的人
热烈的红颜 2008-11-15
  • 打赏
  • 举报
回复
struts-config.xml 这个文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

<struts-config>
<data-sources />
<form-beans>
<form-bean name="UserForm" type="org.ly.struts.form.UserForm"></form-bean>
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings >
<action path="/user" name="UserForm"></action>
</action-mappings>
<controller>
<set-property property="processorClass" value="org.springframework.web.struts.DelegatingActionProxy"/>
</controller>
<message-resources parameter="org.ly.struts.ApplicationResources" />
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml" />
</plug-in>
</struts-config>

applicationContext.xml这个文件<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">


<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.mysql.jdbc.Driver">
</property>
<property name="url"
value="jdbc:mysql://localhost:3306/formalhibernate">
</property>
<property name="username" value="root"></property>
</bean>
<bean id="SessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
</bean>
<bean name="/user" class="org.ly.struts.action.UserAction"/>

</beans>
daerqwert 2008-11-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 liujinfengliuyi 的回复:]
上面贴错了 是这样的
<action-mappings>
<action path="/user" name="userForm" attribute="userForm"> </action>
</action-mappings>
[/Quote]

好像action里少了个属性吧 type属性呢?没有指定你的action的位置啊.
zidasine 2008-11-15
  • 打赏
  • 举报
回复
贴下控制台的异常信息
加个log4j.properties
  • 打赏
  • 举报
回复
你按上面步骤再检查一遍,有什么问题再说
关注ing!
  • 打赏
  • 举报
回复
出现这样的原因 首先 1.、web.xml文件中未配置ActionServlet。

2、struts-config.xml文件未配置你要访问的Action。

3、你的jsp文件form标记中action属性的路径名称错误。
检查

1、在web.xml文件中加上ActionServlet的配置信息

<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>

2、在Struts-config.xml文件检查你要访问的Action配置文件。

3、检查jsp文件form标记中action属性的路径名称是否与Struts-config.xml文件中action标记的path属性的路径名称一致。

4、非以上情况的解决办法就是检查web容器的log日志,如果时tomcat则检查下logs目录下的localhost_log文件,看里边是否记录有错误信息,然后根据错误信息提示将其纠正。

除了以上的 :
也有可能是找不到Spring.jar包 。建议重新导入
tiyuzhongxin789 2008-11-15
  • 打赏
  • 举报
回复
我也碰到这样的错误,但是最后我找到原因了,是我们写的CLASS文件出错了,而我们用的SSH结构,他不给我们报是什么错,你好好的看看你的CLASS接口那些文件,错误在那里产生的,相信我,不是配置的问题!
qap22 2008-11-15
  • 打赏
  • 举报
回复
up
sebatinsky 2008-11-15
  • 打赏
  • 举报
回复
第一,全盘检查一下,web.xml,struts.xml,spring.xml,还有struts.properties。这个可以放到struts.xml当中,
第二,你设置了spring来管理之后,(首先说说,你没有用spring来管理的时候,如果程序可以运行,那就是spring加入之后的错误,这里主要是struts加上一个spring工厂,还有,web.xml当中配置监听,最后就是spring的配置问题了)
第三:如果仅仅是加入了spring之后运行不出来,也就是上面的那一步出错了,肯定就是spring的配置问题,我看了下楼上的,我觉得,这样配置好像有问题吧,数据库的session加入,应该不是那个样子的,建议楼主去看看成功的案例,首先写一个main来处理吧,如果这个main能够运行,证明的的spring可以运行了,这个时候,你再加入struts来导向,就可以运行了,
不知道说清楚没有,当然,没有给出具体的实例,这里感到不好意思了,
因为说实话,工作过程中,我遇到问题,去网上找的时候,每个人的实例都是不一样的,所以不一定跟你的合适,所以方法还是重要的,虽然找错误是一个比较艰苦的过程,不过还是能让人学习不少的,
热烈的红颜 2008-11-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zjnoall 的回复:]
我也碰到这样的错误,但是最后我找到原因了,是我们写的CLASS文件出错了,而我们用的SSH结构,他不给我们报是什么错,你好好的看看你的CLASS接口那些文件,错误在那里产生的,相信我,不是配置的问题!
[/Quote]

不是很明白 是否可以 说清楚点
加载更多回复(3)

67,513

社区成员

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

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