2014-12-22 2 views
0

Я получаю эту нелепую ошибку:Запуск .war в wildfly, без Datasource

jboss.naming.context.java.module.helloworld.helloworld.DefaultDataSource не хватает [jboss.naming.context.java.jboss .datasources.ExampleDS]

Который я не получаю, так как моя война не использует упорство. Мне действительно нужно иметь источник данных для начала войны?

+0

ли вы используете файл конфигурации standalone.xml или попытаетесь изменить его в текстовом редакторе? –

+0

Я просто взял его с помощью консоли управления. Затем я просто добавил его обратно, теперь все работает. Кажется, это должно быть ошибкой. –

+0

Мне кажется, что вы скопировали некоторый пример кода и что там где-то есть ссылка DataSource, либо в классе java, либо в дескрипторе развертывания. Как вы развертываете свое приложение? –

ответ

2

Это не ошибка. JavaEE 7 предоставляет команду DefaultDataSource. Просто потому, что вы не имеете ресурс-реф к нему не означает, что вы не смотрите его, так Wildfly должен обеспечить Java: комп/DefaultDataSource который отображает на ExampleDS:

EE.5.19 Default Data Source 
The Java EE Platform requires that a Java EE Product Provider provide a database 
in the operational environment (see Section EE.2.6, “Database”). The Java EE 
Product Provider must also provide a preconfigured, default data source for use by 
the application in accessing this database. 

The Java EE Product Provider must make the default data source accessible to 
the application under the JNDI name java:comp/DefaultDataSource. 

The Application Component Provider or Deployer may explicitly bind a 
DataSource resource reference to the default data source using the lookup element 
of the Resource annotation or the lookup-name element of the resource-ref 
deployment descriptor element. For example, 

@Resource(lookup="java:comp/DefaultDataSource") 
DataSource myDS; 

In the absence of such a binding, the mapping of the reference will default to 
the product's default data source. 

For example, the following will map to a preconfigured data source for the 
product's default database: 

@Resource 
DataSource myDS; 
+0

Это имеет смысл, но почему создатели java ee задают такую ​​вещь? –

+0

Я помню, как Арун Гупта сказал, что это должно облегчить кривую обучения для новичков. По крайней мере, теперь вы можете запустить приложение, которое использует JPA, не беспокоясь об установке и настройке базы данных раньше. –

Смежные вопросы