2011-11-21 196 views
0

当我提交JSP表单时,我在IE中收到405 - Request method 'POST' not supported错误消息。HTTP状态405 - 不支持请求方法'POST'(仅限IE)

同一应用程序工作正常,在谷歌Chrome和Mozilla Firefox浏览器,但在IE 6,7抛出错误消息,8

我的JSP:

<form:form name="create" action="submit.view" method="POST" commandName="xxx"> 
    .... 
</form:form> 

控制器:

@Controller 
public class TicketController { 
    @RequestMapping(value = "/submit.view", method = RequestMethod.POST) 
    public ModelAndView submit(HttpServletRequest request, 
      HttpServletResponse response, 
      @ModelAttribute("xxx") Form TicketForm, BindingResult result) 
      throws Exception { 
      ... 
      ... 
    } 
} 

能任何人都解释了为什么我只能在IE中获得这些错误信息?

+0

只在IE?这与你得到的错误的性质相矛盾。请使用Fiddler2跟踪HTTP请求,并检查每个浏览器的差异(特别是请求URI和原始头文件)。在你的问题中包含观察结果。我能想到的是,IE被配置为使用代理,而代理又被破坏了。 – BalusC

+0

如果它显示HTTP错误,那么它应该在所有浏览器中都是相同的。 Get或Post方法不依赖于浏览器。也许你错过了别的东西。 – gprathour

+0

当我们在表单中提交单个项目时,我们在IE中遇到了这个问题。它只发生在我们有一个元素的表单时,并且使用输入按钮来提交表单。我们通过在表单中​​添加空白字段或进一步限制所需参数的范围来解决问题。 – Scott

回答

0

Atlast工作。出现的问题是安全问题。我们使用过NTLM,但是当我们改为LDAP时,问题得到了解决。不知道为什么NTLM没有工作。但问题得到解决

1

试试这个:

@RequestMapping(value = "*/submit.view", method = RequestMethod.POST) 

也许IE变化形式行动URL

+0

不,那不行。我曾尝试过这些 – freepublicview

相关问题