我正在使用 JSF,...我认为这是一个愚蠢的问题,但我真的不明白。我的问题:我有一个 jsf 页面:/product.xhtml
<f:metadata>
<f:viewParam name="p" value="#{singleProduct.p}" />
</f:metadata>
...
<h:form>
<h:inputTextarea value="#{singleProduct.content}" />
<h:commandLink value="Comment" action="#{singleProduct.postComment}" />
</h:form>
还有我的 bean:SingleProduct
@Named
@SessionScoped
@Inject
private ProductService productService; //EJB
private int p;
private String content;
//Getters and setters;
public void postComment(){
productService.addComment(p,content); //addComment(int productId, String commentContent)
}
现在,我打开一个带有 URL: 的浏览器选项卡/product.xhtml?p=1
。然后打开另一个带有 URL: 的选项卡/product.xhtml?p=2
。然后返回到带有 URL 的选项卡:/product.xhtml?p=1
键入并提交表单。我想问:保存到数据库的评论有多少 productId 值: 1 或 2 ?我认为我的问题与 JSF 的状态有关,但我并不清楚。谢谢