ペイロールシステムで作業しています。ユーザーがブラウザを更新したら、そのページで利用可能な統計を更新する必要があります(統計はDBから取得して表示する必要があります)。しかし、現在は正しく機能していません。ページのcosで、Javaコードは呼び出されませんが、キャッシュされたページに前のデータが読み込まれます。以下のコードを追加して修正してみましたが、うまくいきませんでした。
@Override
protected void setHeaders(WebResponse response) {
response.setHeader("Cache-Control",
"no-cache, max-age=0,must-revalidate, no-store");
}
誰もがこれの修正を知っていますか?ありがとう!
これは初期コード
ManageCredits.htmlでした
<wicket:head>
<wicket:link>
<link rel="stylesheet" type="text/css" href="../css/style.css"/>
</wicket:link>
</wicket:head>
<wicket:panel xmlns:wicket="http://wicket.apache.org/">
<div class="offercount-container round-border">
<div class="manage-credits-lbl"><span>Manage Credits</span></div>
<div>
<ul>
<li>Balance amout:<span wicket:id="balanceAmtLbl" >0</span></li>
<li>Number if transactions<span wicket:id="transactionLbl" >0</span></li>
</ul>
</div>
</div>
</wicket:panel>
ManageCredits.java
import com.payrole.service.Offer;
import com.payrole.service.OfferService;
import com.payrole.service.ServiceLocator;
import com.payrole.wicket.PayroleLabel;
import java.text.Format;`enter code here`
import org.apache.wicket.markup.html.panel.Panel;
public class OfferFanSummaryPanel extends Panel{
private long balance;
private long transactionCount;
public OfferFanSummaryPanel(String id){
super(id);
}
public OfferFanSummaryPanel(String id, Offer offer) {
super(id);
balance = (client.getBalance()==null) ? 0 : client.getBalance();
transactionCount = (client.getTransactionCount()==null) ? 0 : client.getTransactionCount();
initTransactionSummary();
}
private void initTransactionSummary(){
PayroleLabel balanceAmtLbl = new PayroleLabel("balanceAmtLbl", String.valueOf(balanceAmt), PayroleLabel.NUMBER);
add(balanceAmtLbl);
PayroleLabel transactionLbl = new PayroleLabel("transactionLbl", String.valueOf(transaction), PayroleLabel.NUMBER);
add(transactionLbl);
}
}