Попытка добавить "java.net.URL" в tomee.xml, но параметры не передаются конструктору. Вот дополнение к tomee.xml:
<Resource id="someJndiName" class-name="java.net.URL" factory-name="URL" constructor="spec">
spec http://google.com
</Resource>
Это вызывает:
INFO: Creating Resource(id=someJndiName)
Dec 18, 2013 5:10:12 AM org.apache.openejb.util.OpenEJBErrorHandler handleUnknownError
SEVERE: FATAL ERROR: Unknown error in Assembler. Please send the following stack trace and this message to [email protected] :
java.lang.NullPointerException
at org.apache.xbean.recipe.ReflectionUtil.toParameterList(ReflectionUtil.java:1026)
at org.apache.xbean.recipe.ReflectionUtil.findStaticFactory(ReflectionUtil.java:811)
at org.apache.xbean.recipe.ObjectRecipe.findFactory(ObjectRecipe.java:538)
at org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:274)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
На основе ресурсов OpenEJB/TomEE: как это работает работает? код использует отражение для вызова конструктора и должен передавать параметр, но здесь это не так. Это ошибка или есть другой способ передать параметры конструктору?
Я попытался добавить запись в "%TomEE%/conf/system.properties", но ничего не изменилось.
someJndiName.spec=http://google.com
Я попытался использовать конструктор с тремя параметрами для URL с тем же результатом.
<Resource id="someJndiName" class-name="java.net.URL" factory-name="URL" constructor="protocol, host, file">
protocol http
host google.com
file
</Resource>
Моя текущая потребность состоит в том, чтобы добавить объекты "java.net.URL" к ресурсам сервера, но возможность добавлять произвольные объекты с использованием этого общего метода была бы очень полезной.
Нужно ли создавать какой-либо класс обработчика для обработки «java.net.URL» как ресурса TomEE?