我的代碼:GWT,爲什麼CellTable在Eclipse中運行時不顯示圖像?
ClickableTextCell imageCell = new ClickableTextCell() {
@Override
public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
if (data != null) {
String imagePath = "contact.jpg";
//sb.appendEscaped(imagePath);
sb.appendHtmlConstant("<img width=\"20\" src=\"" + imagePath + "\">");
}
}
};
Column<List<String>,String> imageColumn = new Column<List<String>,String>(imageCell) {
@Override
public String getValue(List<String> object) {
return "";
}
};
imageColumn.setFieldUpdater(new FieldUpdater<List<String>, String>() {
@Override
public void update(int index, List<String> object, String value) {
//Window.alert("You clicked " + object.get(index));
}
});
table.addColumn(imageColumn, columnName);
但在Eclipse中運行時,它不顯示圖像。 Web服務器得到這個錯誤:
Request headers
Host: 127.0.0.1:8888
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20100101 Firefox/20.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://127.0.0.1:8888/abc.html?gwt.codesvr=127.0.0.1:9997
Cookie: MYCOOKIE=htzjk7g2pva9; JSESSIONID=1xjqdxl3kuuxw; PRODUCTSERVICECOOKIE=1xjqdxl3kuuxw
Connection: keep-alive
Response headers
Set-Cookie: PRODUCTSERVICECOOKIE=1xjqdxl3kuuxw;Path=/
Content-Length: 1397
Content-Type: text/html; charset=iso-8859-1
[WARN] 404 - GET /contact.jpg (127.0.0.1) 1397 bytes
Request headers
Host: 127.0.0.1:8888
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20100101 Firefox/20.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: en-US,en;q=0.5
另外,第二個問題是在哪裏放置圖像,這樣,當我們部署我們最終的Web應用程序,我們可以很容易地管理圖像。我實際上與Eclipse中的文件夾結構相混淆。
在MyProject的,我有:
戰爭\ myproject的
戰爭\ WEB-INF
戰爭\ MyProjet.css
戰爭\ MyProjet.html
但在MyProject的我也有文件夾的src其中包含所有的java文件
的src \ MyProject的\客戶\(客戶端文件夾中,我把 「contact.jpg」
的src \ MyProject的\服務器
我不知道如果我把接觸。 JPG在正確的文件夾中。此外,當我們部署web應用程序我們將Eclipse中的所有圖像文件遷移到這個文件夾: - >
戰爭\ myproject的
圖像的路徑是從數據庫動態拉取的,而ImageResource是用於固定圖像的。 – Tom 2013-04-23 17:42:47