0

从早上开始,我就陷入了以下问题。在一个地方同样的事情正在工作,第二个地方它不工作是不显示错误。我检查了这个问题被问了很多次,我参考了所有的问题和解决方案,但问题仍然是一样的。按照我在控制器中使用的代码。

@RequestMapping(method = RequestMethod.POST)
    public String findRide(@ModelAttribute("postAd") PostAdRR user,ModelMap model,@Valid PostAdRR postAd,
    BindingResult result,HttpSession session,HttpServletRequest request) {
    if (result.hasErrors()) {
        System.out.println(result.toString());

            return "postAd";
     }

即使它进入错误块并打印 SOP 行。

但它没有显示在表格上。

 <form:form method="POST" commandName="postAd" enctype="multipart/form-data" >
     <form:errors path="contactName"  cssClass="Err"/>

我的域类(PostAdRR)代码是

@NotEmpty(message = "You must provide Title.")
    private String title =null;

并且相同的代码正在其他地方工作请提出一些几乎我尝试了所有组合的东西。


java应用程序中的Flash游戏

我想把我用 CS.5 制作的一个 Flash 游戏(它被导出到一个 .swf)放到一个 java 应用程序中。通过研究,我发现了一些方法可能是使用嵌入式网络浏览器或某种 Flash 播放器:

将 .swf 文件嵌入到我的 Jframe
在 Java 应用程序中嵌入 Web 浏览器

但这是最好的方法吗?它会保持交互性(即游戏)吗?如果嵌入式 Web 浏览器显示 back/front/url/etc,它也将完全适合。按钮然后我不能使用它

那么最好的方法是什么?java 应用程序中的 Flash 播放器是否会保持交互性(游戏的工作方式与在 Web 浏览器或 Flash 播放器应用程序中的工作方式相同)?

4

3 回答 3

1

我认为问题出在您的控制器功能签名中。您正在验证其他对象,并且您的模型属性是另一个对象。这不是验证对象并在表单上显示错误的正确方法。

您的方法签名应如下所示。

public String findRide(@Valid @ModelAttribute("postAd") PostAdRR user,ModelMap model, BindingResult result,HttpSession session,HttpServletRequest request)

那就是现在您将同一个对象绑定到您正在验证的视图。

希望对您有所帮助。

干杯。

于 2012-05-14T05:49:32.147 回答
0

我有点想知道为什么你的例子中的名字不匹配。

一方面是:另一方面contactName<form:errors path="contactName" cssClass="Err"/>title

愿这就是原因。


如果这不起作用,请尝试<form:errors path="*" cssClass="Err"/>(在 from 范围内)显示所有错误消息。该测试的结果有望帮助您确定问题是在视图中还是在控制器中

于 2012-05-13T12:28:29.863 回答
0

您可以尝试@NotNull@NotEmpty. 也可以@Valid在您的模型属性之前尝试您的控制器。这些只是猜测,因为您告诉其他页面正在工作。

于 2012-05-14T05:45:13.443 回答