我有一个Java Web应用程序,我今天睡了个奇怪的行为:
提交我的表单(JSP页面)后,我可以看到其他两次使用null属性的调用。
public class SubmitFormAction {
private String adjacency;
private String laplacian;
private String slaplacian;
private String optiFunc;
private String caixa1;
private String ordermin;
private String ordermax;
private String minDegree;
private String maxDegree;
private String triangleFree;
private String allowDiscGraphs;
private String biptOnly;
public String execute () {
System.out.println(" 1." +adjacency+ " 2." + laplacian+ " 3." + slaplacian+ " 4." + optiFunc+ " 5." + caixa1+ " 6." + ordermin+ " 7." +
ordermax+ " 8." + minDegree+ " 9." + maxDegree+ " 10." + triangleFree+ " 11." + allowDiscGraphs+ " 12." + biptOnly);
}
}
将表单提交到此操作后的输出:
1.null 2.null 3.null 4.sdfsdf 5.min 6. 7. 8. 9. 10.null 11.null 12.null
1.null 2.null 3.null 4.null 5.null 6.null 7.null 8.null 9.null 10.null 11.null 12.null
1.null 2.null 3.null 4.null 5.null 6.null 7.null 8.null 9.null 10.null 11.null 12.null
第一个输出是我的提交。另外两个是“幻影”电话...... 在Chrome中进行测试时,我只需在Chrome地址栏中输入带参数(“获取”格式)的操作网址,即可在不使用网页的情况下测试提交内容。
注意我不要输入或转到URL,只是写入并改为Eclipe来检查某些东西......现在我的惊喜:Eclipse中注册了一个日志,显示Action已被调用,即使我不会这样做! !!
有些东西让Chrome跟在后台的地址......
我只是将操作更改为不转到任何页面并使用GET请求以避免在进程中使用HTML页面(我担心一些javascript正在执行此操作)但没有任何更改。
在Firefox和Internet Explorer中一切顺利,所以问题不在我的代码中......
我知道...如果不是在我的代码中,它在Chrome中,这里不是询问Chrome的地方......但请帮忙!
答案 0 :(得分:1)
如果您在多功能框中输入网址但等待按Enter键,则Chrome可能会在隐藏标签中预取并预呈现您的网页。在正常的Web浏览期间,该预测机制减少了对网络延迟的感知。 隐私>预测网络操作以提高页面加载性能选项(在显示高级设置... 下)控制此行为。
Chrome使用其导航历史记录来决定何时开始预取网址;访问chrome://predictors
查看数据。您的网址可能会以绿色突出显示多次,以表示高置信度预测。有关详细信息,请参阅https://www.igvita.com/posa/high-performance-networking-in-google-chrome/#omnibox。
验证Chrome实际上是预呈现网页的一种方法是在输入网址时在chrome://net-internals/#prerender
中观看 Active Prerender Pages 列表,而无需在另一个标签中按Enter键