2012-01-17 43 views
0

我有一个jsp,它有一个struts循环“logic:iterate”,它显示数据库中的所有传递基础条目。但是,一旦循环输出特定数量的字符到屏幕上,它将停止所有输出并且整个页面立即中断。Struts循环中断特定字符数

字符的具体数量可以通过从循环输出每次迭代中删除一个字符导致循环输出显示为更多页面的事实来证明。例如电流环路是这样的:

<logic:iterate name="list" id="item"> 
    <tr> 
     <td><bean:write name="item" property="deliverybasis"/></td> 
     <td><a style="text-decoration: none;" href="confirmRemoveDeliveryBasis.do?&id=<bean:write name="item" property="deliverybasis"/>"><bean:message key="text.remove"/></a> </td> 
    </tr> 
</logic:iterate> 

目前有18个行的交付基础表,但突破是发生之前的循环可以完成。因此,此循环输出12个tr,但在最后一次迭代时,它只能移除链接的“<a”。假设您从代码中删除1个字符,例如从href值中删除1个字符。通过这样做,每次迭代输出的字符数将减少1.这将使循环显示为输出更多代码,实际上它输出的字符数量完全相同。

在我们的示例中,不是停在“<a”处,循环将停止在'<a style="text'处。乍一看,它看起来好像已经输出了更多的字符,但是如果您记得我们在每次迭代期间输出的字符数减少了1,并且现在有12次迭代,那么您会意识到,总数相同字符已输出。如果您发现,“风格=“文本”正是12个字符。

我的问题是什么可能会导致这种情况发生?有没有在代码中需要被正确地设置一个设置或配置?

+0

可能是任何事情,还不够继续。多少个字符? 12日的数据有什么不同?这是包含在内吗?自定义标签?瓦?当然,Struts中没有任何特别的东西会在* n *字符后任意*停止。 – 2012-01-17 23:47:43

回答

0

经过大量的搜索之后,我在form-b​​ean defintion中发现了一个错字,form-b​​ean无法找到我指定的类,因此出现了问题。尽管根据我的经验和观点,这是一种奇怪的方式这个错误会显示出来,我认为它会打破整个页面,不工作一半的页面,然后完全没有任何错误或通知

修复这个错字之后,问题就解决了

+0

应该是启动日志中的消息。 – 2012-01-18 00:16:51