Обновление:
проверьте ответ логана ниже для решения, доступного в последних версиях GWT.
У меня было (на самом деле, есть) та же проблема, что и у вас - после перехода на GWT 2.0 у меня был файл свойств, который я хотел использовать в своих файлах UiBinder.К сожалению, я не смог заставить его работать так, как хотел - кажется, разработчики GWT хотят, чтобы люди использовали синтаксис, описанный в руководстве i18n для UiBinder - где интерфейс сообщения создается во время компиляции для каждогоШаблон UiBinder и т. Д.
В любом случае, вы все равно можете использовать внешние Messages
интерфейсы, например:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui">
<ui:with field='cc' type='path.to.i18n.SomeMessages'/>
<ui:with field='res' type='path.to.resource.ResourceBundle'/>
<ui:style>
.required {
color: red;
font-weight: bold;
}
.right {
text-align: right;
}
.textBox {
margin-right: 7px;
}
</ui:style>
<g:HTMLPanel styleName='{res.style.form} {res.style.mbox}' ui:field='mainPanel'>
<h2 ui:field='loginHeader' />
<h3 ui:field='loginLabel' />
<div class='{style.textBox}'><g:TextBox ui:field="loginBox" /></div>
<h3 ui:field='passwordLabel' />
<div class='{style.textBox}'><g:PasswordTextBox ui:field="passwordBox" /></div>
<div><g:CheckBox ui:field='rememberMeCheckBox' text='{cc.rememberMeCheckboxText}' /></div>
<div class='{style.right}'><g:Button ui:field='submitButton' text='{cc.loginSubmitButtonText}' /></div>
</g:HTMLPanel>
</ui:UiBinder>
Хотя это работает только для таких вещей, как заголовок Button
и т. Д., не содержимое div: / Вы можете заполнить их в классе за шаблоном UiBinder, но должен быть лучший способ.
Я надеялся, что вы можете установить внутренний HTML черезinnerHTML
(поскольку UiBinder должен распознавать этот метод и позволять устанавливать его значение с помощью шаблона XML / UiBinder), но, увы, в прошлый раз, когда я проверял, он не работал: /