已有101人关注
请编辑解答问题
发表在Java图书答疑 2011-03-09
是否精华
版块置顶:
[font size=4]    我买了“spring 应用开发 完全手册”一书。书写的很好。但有一处不明白,请编辑给于解答。
本书190-191页。  3.PropertiesMethodNameResolver 中的“...然后把index.jsp首页的3个按钮改成超链接,连接到控制器的方法映射上”[font color=#FF0000]如何改成超链接?敬请编辑写出代码。谢谢![/font][/font]
分享到:
精彩评论 11
绿草_mrkj
学分:0 LV1
2011-03-09
沙发
  在页面中添加按钮是通过<input type = "button"> ,添加超链接是通过<a href="#">实现。
jiao
学分:0 LV1
2011-03-10
板凳
绿草编辑:
     是的,你说的很对,但我希望的是具体的代码。
     书上的源代码是, 方法名解析器是 ParameterMethodNameResolver,
Index.jsp代码为:”…<input type="submit" name="action" value="add" > 

&nbsp;       
        <input type="submit" name="action" value="update">
        &nbsp;
        <input type="submit" name="action" value="delete">…”程序正常运行。
根据书上的要求,我改用PropertiesMethodNameResolver方法名解析器,配置文件改为:
<bean id="paramMethodResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="mappings">
<props>
               <prop key="/productAdd.lzw">add</prop>
               <prop key="/productUpd.lzw">update</prop>
               <prop key="/productDel.lzw">delete</prop>
            </props> 
</property>
</bean>
 这时,index.jsp中的代码如何改呢?书上只是说:“然后把index.jsp首页的3个按钮改成超链接,连接到控制器的方法映射上。“ 我写了以下代码:

[font size=4]<input type="botton" name="action" value="add" onclick="location.href='/productAdd.lzw'">
…”错误!又写了<a href="com.lzw.MAController? productAdd.lzw">add</a>…还是错误!
[/font]请编辑写出正确的代码。
aster
学分:0 LV1
TA的每日心情
开心
2023-01-31 09:41:43
2011-03-10
地板
[FIELDSET][LEGEND]引自:2楼[/LEGEND]
绿草编辑:
     是的,你说的很对,但我希望的是具体的代码。
     书上的源代码是, 方法名解析器是 ParameterMethodNameResolver,
Index.jsp代码为:”…<input type="submit" name="action" value="add" > 

&#160;       
        <input type="submit" name="action" value="update">
        &#160;
        <input type="submit" name="action" value="delete">…”程序正常运行。
根据书上的要求,我改用PropertiesMethodNameResolver方法名解析器,配置文件改为:
<bean id="paramMethodResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="mappings">
<props>
               <prop key="/productAdd.lzw">add</prop>
               <prop key="/productUpd.lzw">update</prop>
               <prop key="/productDel.lzw">delete</prop>
            </props> 
</property>
</bean>
 这时,index.jsp中的代码如何改呢?书上只是说:“然后把index.jsp首页的3个按钮改成超链接,连接到控制器的方法映射上。“ 我写了以下代码:

[font size=4]<input type="botton" name="action" value="add" onclick="location.href='/productAdd.lzw'">
…”错误!又写了<a href="com.lzw.MAController? productAdd.lzw">add</a>…还是错误!
[/font]请编辑写出正确的代码。

[/FIELDSET]

回复:
  请问你Spring的版本是多少?
jiao
学分:0 LV1
2011-03-11
4L
随书配的光盘中的版本,应该是2.0.1.
aster
学分:0 LV1
TA的每日心情
开心
2023-01-31 09:41:43
2011-03-14
5L
读者您好:您可以换新版的Spring框架试试
jiao
学分:0 LV1
2011-03-14
6L
我把各种版本都试了。根本不是版本问题。就是超链接如何连接到控制器的方法上。实际就是一句代码,但我不会,编辑不会,可以请教原著者,我联系不上。
东北虎
学分:0 LV1
2011-03-15
7L
您好,请用如下链接试试一下
<a href="productAdd.lzw?action=add">add</a>
<a href="productAdd.lzw?action=update">update</a>
<a href="productAdd.lzw?action=delete">delete</a>
jiao
学分:0 LV1
2011-03-16
8L
编辑: 
   把这个代替原程序<a href="productAdd.lzw?action=add">add</a>,还是不行。错误如下:

严重: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'multiController' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Cannot resolve reference to bean 'paramMethodResolver' while setting bean property 'methodNameResolver'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'paramMethodResolver' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'mappings' of bean class [org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver]: Bean property 'mappings' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'paramMethodResolver' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'mappings' of bean class [org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver]: Bean property 'mappings' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
Caused by: org.springframework.beans.NotWritablePropertyException: Invalid property 'mappings' of bean class [org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver]: Bean property 'mappings' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
东北虎
学分:0 LV1
2011-03-16
9L
您好,请用如下链接再试一下
<a href="/productAdd.lzw">add</a>
<a href="/productUpd.lzw">update</a>
<a href="/productDel.lzw">delete</a>
jiao
学分:0 LV1
2011-03-17
10L
编辑:
  按你提的方法,如:
<a href="productAdd.lzw?action=add">add</a>
<a href="productAdd.lzw>add</a>
<a href="/productAdd.lzw?action=add">add</a>
<a href="/productAdd.lzw">add</a>...
仍无法运行。控制台提示是:The requested resource (/productAdd.lzw) is not available.
但我认为方向是正确的,我在用各种方法试试。也希望编辑继续寻找正确答案。仍然谢谢!
首页上一页 12 下一页尾页 11 条记录 1/2页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照