java.lang.Error: Unresolved compilation problem: 
The method showModifyItemInfo(long) is undefined for the type IItemInfo这个意思好象是说我showModifyItemInfo在接口IItemInfo中没有定义,可我明明定义了,而且MyEclipse编译也通过了。 /**
 * 显示修改物品信息页面
 * @param request
 * @param response
 * @return
 */
public ModelAndView showModifyItemInfo(HttpServletRequest request,HttpServletResponse response){
Map session = loginSession.getUserSession();
long id = ServletRequestUtils.getLongParameter(request, "id", 0);
Map map = itemBo.showModifyItemInfo(id);
request.setAttribute("companyId", session.get("companyId"));
return new ModelAndView("pages/item/updateItem.jsp",map);
}
我在方法的开始处设置了一个断点,结果录色的条直接指向了Map map = itemBo.showModifyItemInfo(id);这行。我在Variables看不到id这个变量,而且我Watch后,显示出现异常“id cannot be resolved”
异常:2009-12-22 23:18:51 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet dispatcherServlet threw exception
java.lang.Error: Unresolved compilation problem: 
The method showModifyItemInfo(long) is undefined for the type IItemInfo at oysl.itemInfo.action.ItemInfoAction.showModifyItemInfo(ItemInfoAction.java:104)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)        
等等,不全部帖出。

解决方案 »

  1.   

    public ModelAndView showModifyItemInfo(HttpServletRequest request,HttpServletResponse response){看看这里的两个参数是HttpServletRequest 和HttpServletResponse ,你用个id当然调不动,当然没定义
    具体自己改下吧。
      

  2.   

    我这个有什么问题吗?这个是重写spring的控制器之后的方法。这两个参数没问题。
      

  3.   

    The method showModifyItemInfo(long) is undefined for the type IItemInfo 这句话告诉你IItemInfo 没定义showModifyItemInfo(long) 方法,要求参数为long
      

  4.   


    谢谢你的回答,IItemInfo是我的一个接口。在里面我定义了showModifyItemInfo(long itemId) 这个方法,而且在实现类里面也有对应的实现。action里其他方法都能用,唯独这个不能用。
    还有一个很奇怪的现象就是:我注释了这段代码,但程序异常还是指定Map map = itemBo.showModifyItemInfo(id);这行。这行代码是被注掉的。
      

  5.   


    晕clean,重新build,估计是缓存问题。注释掉的不会被指向。
      

  6.   

    严重: Servlet.service() for servlet jsp threw exception
    java.lang.Error: Unresolved compilation problem: 
    The method setCharacterEncoding(String) is undefined for the type HttpServletResponse at cn.meeting.filter.EncoderFilter.doBeforeProcessing(EncoderFilter.java:55)
    at cn.meeting.filter.EncoderFilter.doFilter(EncoderFilter.java:69)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
    at java.lang.Thread.run(Unknown Source)帮忙看看是怎么回事?