div
動的な背景を持つを作成する次のコードがあります。
public interface Template extends SafeHtmlTemplates {
@Template("<div class='imageDiv' style=\"background-image: url({0});\"/>")
SafeHtml content(String picture);
}
public void render(SafeHtmlBuilder safeHtmlBuilder, final T model) {
SafeHtml html = TEMPLATE.content(picture);
safeHtmlBuilder.append(html);
}
アプリを実行した後、最初に次の警告が表示されました。
Template with variable in CSS attribute context:
The template code generator cannot guarantee HTML-safety of the template
次にエラー:
java.lang.NullPointerException: null
at com.google.gwt.safehtml.shared.SafeHtmlUtils.htmlEscape(SafeHtmlUtils.java:156)
at xx.xx.xx.xx.xx.ImageItemCell_TemplateImpl.content(ImageItemCell_TemplateImpl.java:14)
at xx.xx.xx.xx.xx.ImageItemCell.render(ImageItemCell.java:53)
画像を SafeUri として設定しようとすると:
SafeUri uri = UriUtils.fromTrustedString(picture);
SafeHtml html = TEMPLATE.content(uri);
この別のエラーが発生します:
[ERROR] - SafeUri can only be used as the entire value of a URL attribute.
Did you mean to use java.lang.String or SafeHtml instead?
この場合どうすればいいですか?
ありがとう。