Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Jboss7 - помогите с тестовым приложением, Не могу запустить редуцированный пример 
:(
    Опции темы
alxt
Дата 20.3.2012, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 19.12.2008

Репутация: нет
Всего: нет



Взял пример https://docs.jboss.org/author/display/AS71/...ient+using+JNDI
Редуцировал его до такого:

Код

@Remote
public interface TestRemote {
  int add(int a, int b);
}


Код

@Stateless
public class TestBL implements TestRemote {
  @Override
  public int add(int a, int b) {
    return a+b;
  }
}


Собрал простейший jar и задеплоил. В логах всё хорошо
Код

17:08:28,628 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) JBAS015876: Starting deployment of "JBoss7Test-0.SHAPSHOT.jar"
17:08:28,659 INFO  [org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor] (MSC service thread 1-4) JNDI bindings for session bean named TestBL in deployment unit deployment "JBoss7Test-0.SHAPSHOT.jar" are as follows:
        java:global/JBoss7Test-0.SHAPSHOT/TestBL!ru.start2com.test.jboss7.beans.TestRemote
        java:app/JBoss7Test-0.SHAPSHOT/TestBL!ru.start2com.test.jboss7.beans.TestRemote
        java:module/TestBL!ru.start2com.test.jboss7.beans.TestRemote
        java:jboss/exported/JBoss7Test-0.SHAPSHOT/TestBL!ru.start2com.test.jboss7.beans.TestRemote
        java:global/JBoss7Test-0.SHAPSHOT/TestBL
        java:app/JBoss7Test-0.SHAPSHOT/TestBL
        java:module/TestBL
17:08:28,706 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS018559: Deployed "JBoss7Test-0.SHAPSHOT.jar"


Создал файл jboss-ejb-client.properties
[code=nocolor]
remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
remote.connections=default
remote.connection.default.host=localhost
remote.connection.default.port = 4447
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
endpoint.name=client-endpoint
[/code=nocolor]

и клиентский код

Код

  private static void invokeStatelessBean() throws NamingException {
    TestRemote statelessRemoteCalculator = lookupRemoteStatelessCalculator();
    int sum = statelessRemoteCalculator.add(3, 4);
    System.out.println("sum = " + sum);
  }

  private static TestRemote lookupRemoteStatelessCalculator() throws NamingException {
    Security.addProvider(new JBossSaslProvider());
    final Hashtable<String, String> p = new Hashtable<String, String>();
    p.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming");
    p.put(Context.SECURITY_PRINCIPAL, "alxt");
    p.put(Context.SECURITY_CREDENTIALS, "123");
    final Context context = new InitialContext(p);
    return (TestRemote) context.lookup("ejb:app/JBoss7Test-0.SHAPSHOT/TestBL!ru.start2com.test.jboss7.beans.TestRemote");
  }


При запуске на строке "int sum = statelessRemoteCalculator.add(3, 4);" ошибка

Код

Exception in thread "main" java.lang.IllegalStateException: No EJB receiver available for handling [appName:app,modulename:JBoss7Test-0.SHAPSHOT,distinctname:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@7ff5b6
    at org.jboss.ejb.client.EJBClientContext.requireEJBReceiver(EJBClientContext.java:584)
    at org.jboss.ejb.client.ReceiverInterceptor.handleInvocation(ReceiverInterceptor.java:119)
    at org.jboss.ejb.client.EJBClientInvocationContext.sendRequest(EJBClientInvocationContext.java:181)
    at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:136)
    at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:121)
    at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:104)
    at $Proxy0.add(Unknown Source)
    at ru.start2com.test.jboss7.client.TestRemoteClient.invokeStatelessBean(TestRemoteClient.java:23)


При этом на сервере:
17:09:29,677 ERROR [org.jboss.remoting.remote.connection] (Remoting "alxt" read-1) JBREM000200: Remote connection failed: java.io.IOException

Пользователя добавил, пробовал без указания оного. 
jboss-ejb-client.properties точно подхватывается (если поменять, к примеру, в нём порт- то не соединится).

Ткните, пожалуйста, где я ошибся. Или дайте рабочий пример (на сайте жбосса не нашёл- у всех pom.xml странный- у меня не компилируется).
PM MAIL WWW   Вверх
alxt
Дата 21.3.2012, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 19.12.2008

Репутация: нет
Всего: нет



Нашёл! Вместо

Код

return (TestRemote) context.lookup("ejb:app/JBoss7Test-0.SHAPSHOT/TestBL!ru.start2com.test.jboss7.beans.TestRemote");


надо

Код

return (TestRemote) context.lookup("ejb:/JBoss7Test-0.SHAPSHOT//TestBL!ru.start2com.test.jboss7.beans.TestRemote");


Спасибо всем, кто хотя бы посмотрел smile

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0607 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.