struts.convention.result.flatLayoutIf set to false, the result can be put in its own directory: resultsRoot/namespace/actionName/result.extension这个是官方的说明,我也debug调试过,在resultMap中也确实是这样的结果,但视图总是定位到resultsRoot/namespace/actionName-result.extension,不知道大家有没有运行成功的,分享下,先谢谢了!StrutsconventionflatLayout

解决方案 »

  1.   

    刚重新debug了下,原来在makeResults(actionClass, path, resultPrefix, results, packageConfig, resultsByExtension);中,convention将SUCCESS、ERROR、INPUT对应为resultsRoot/namespace/actionName/result.extension,所以只要返回其中的任意一个预定义属性(SUCCESS、ERROR、INPUT),就会成功对应上。而如果是返回"result"字符串,则会对应到resultsRoot/namespace/actionName-result.extension。唉,原来convention的机制是这样,也不在文档中注明下。继续研究下面的问题:
    如何在一个method中返回另一个method对应的result?
    如何在一个action中返回其它action对应的result?有知道的跟帖吧,答案也在本帖公布