![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Привет Всем!
У меня такая проблема: Создаю простой EJB конпонент (используя NetBeans IDE 4.1) после чего устанавливаю его на Sun System Application Server 8. Вроде делаю все как надо - все классы в нужны полях настройки указал (wizard помог), JNDI имя прописал, но когда пытаюсь клиентской программой подключиться к компоненту, то постоянно вылетает исключение: код: InitialContext ic = new InitialContext(); Object homeObject = ic..lookup("NewSessionBean"); сообщение об исключении: ------------------- javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247) at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:284) at javax.naming.InitialContext.lookup(InitialContext.java:351) at javaapplication2.Main.main(Main.java:32) ------------------- Я догадываюсь, что от меня требуется инициализировать объект InitialContext, установив его свойство INITIAL_CONTEXT_FACTORY, но каким классом я не знаю.... Подскажите как эту систуацию разрулить, плз.... |
|||
|
||||
tux |
|
||||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
Насколько я понимаю ты подключаешься не из окружения сервера. Если бы клиент работал на сервере, такого кода
тебе хватило бы. Но поскольку подключаемся снаружи надо задать кой-какую инфу клиенту JNDI чтобы он нашел свой сервис и смог там идентифицироваться. И java.naming.factory.initial - не единственное, что придется задать. Итак, в идеале все должно выглядеть примерно следующим образом:
Здесь
|
||||
|
|||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
на мое собственное удивление пакет com.sun.appserv не содержит
пакет naming.... и соответственно класса фабрики тоже.... где же его взять? |
|||
|
||||
tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
Странно. Взято из документации по Sun System Application Server 8, а именно отсюда - http://docs.sun.com/source/817-6087/dgacc.html.
Тогда еще один вариант:
Установленного сервера у меня нет, проверить версии негде, поэтому вот еще пара ссылок на примеры работы с JNDI от Sun:
![]() |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Эх............. не простое это дело.
На 1050 порте у меня вист svchost вряд ли он поможет мне соединится с SSAS. Исключения постоянно вылетают типа: org.omg.CORBA.COMM_FAILURE. Но все равно буду биться! Попробую что нибуть инноязычное почитать..... |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
А если не секрет что значит из окружения сервера или клиента? То есть я не могу понять как деплоить клиенты. По идее если клиент страница жсп, то она должна быть там где и компонент ежб, это же логично..А вот если ява приложение.то тогда да, скажите, с жсп же реально так:
<%@ page import="converter.Converter, converter.ConverterHome, javax.ejb.*, java.math.*, javax.naming.*, javax.rmi.PortableRemoteObject, java.rmi.RemoteException" %> <%! private Converter converter = null; public void jspInit() { try { InitialContext ic = new InitialContext(); Object objRef = ic.lookup("java:comp/env/ejb/TheConverter"); ConverterHome home = (ConverterHome)PortableRemoteObject.narrow(objRef, ConverterHome.class); converter = home.create(); } catch (RemoteException ex) { System.out.println("Couldn't create converter bean."+ ex.getMessage()); } catch (CreateException ex) { System.out.println("Couldn't create converter bean."+ ex.getMessage()); } catch (NamingException ex) { System.out.println("Unable to lookup home: "+ "TheConverter "+ ex.getMessage()); } } public void jspDestroy() { converter = null; } %> Один вопрос который меня мучает, это зачем и для чего импортировать классы ранее созданных компонент..вот тут я совсем не вьезжаю.Обьясните пожалста. Вот этот фрагмент. <%@ page import="converter.Converter, converter.ConverterHome, -------------------- The truth is out there |
|||
|
||||
powerOn |
|
||||||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Импортируются скорее не классы, которые ранее были созданы, а описания интерфейсов, которые поддерживает этот компонент. Это делается для того, чобы клиент знал с кем имеет дело и мого вызвать требуемые ему методы объекта.
Компилятор должен знать, что это это за классы такие - Converter, ConverterHome, правдо ведь?
Я так понимаю, что под оружением понимается библиотеки классов и пременные оружения сервера, к которому идет запрос на получение объекта. Если у клиента есть возможность использовать эти библиотеки, значит он работает в окружении сервера. |
||||||
|
|||||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Тогда обьясните пожалста, правильно ли я рассуждаю:
1)Я делаю jar-файл компонента 2)Кидаю его в папку server/default/deploy в жбосе и он нормально деплоицца 3)Проблема: в каком месте точно описывается JNDI имя компонента? а)Когда жбосс в консоли его выводит при деплое б)В файле ejb-jar.xml(ваще путаница с тегами) в)Или как? 4)Строю JSP страницу, в результате получаю .war файл, или нада просто страница? 5)Процесс конекта понял, вопрос тока в каком формате импортировать интерфейс созданного компонента, вот строка <%@ page import="converter.Converter, converter.ConverterHome, откада он ее импортирует? не понимаю. или может converter это имя папки откуда подгружаецца интерфейс, или имя размещенного на сервере приложения, а второй Converter это имя самого итерфейса. Неясно. Судя по логике в случае жсп страница и иже с ней должны быть на том же жбоссе..тока как ее там прописать? Я понимаю, что клиент запрашивает жсп страницу, код жсп загружает класс компонента, выполняет код соединения с компонентом, а компонент уже с бд. Весь вопрос с JNDI и деплоем страницы. Заранее спасибо за любые отклики, буду очень благодарен помощи. ps. Неужели в NetBeans 4.1 можно разрабатывать EJB? ![]() -------------------- The truth is out there |
|||
|
||||
powerOn |
|
||||||||||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Легко! Только 4.1 интегрируется с Sun Java System Application Server 8.1, а вот 5.0 интегрируется еще и с JBoss 4.0.3! Хочу сразу добавить, что когда говрят "программа работает в окружении сервера" могут иметь ввиду работает прямо на сервере, например: Клиент - JSP страница использующая EJB. Здесь первый может работать на том же сервере, что и используемая им EJB (Sun Java System Application Server - может как Web приложения разворачивать, так и EJB).
Не знаю точно как в JBoss (я с ним почти не работал), но SJSAS он прописывается в sun-ejb-jar.xml.
Здесь описывается компонет ejbean, а JNDI имя прописано как <jndi-name>ejb/powerbean</jndi-name> Именно строкой такой "ejb/powerbean" его ищут методом lookup. Может в JBoss аналогичные теги, они ведь, теоритически, не должны сильно отличаться.
War файл это как Jar файл, но разница лишь в том, что War - содержит в себе Web приложение, готовое быть развернутым на сервере, а Jar - просто Java приложение или архив с классами. Так ребята из Sun решили расширение назначить, а впринципе и то и то - архив. War архив обычно получается после стадии сборки Web приложения. По пункту 5. Он импортирует её из War архива который успешно за deploy - ил. Раскрой его каким нибудь архиватором, оцени структуру. Как ты и сам догадался:
![]() Это сообщение отредактировал(а) MoonCat - 18.2.2006, 21:45 |
||||||||||
|
|||||||||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
MoonCat
Вот спасибо..Уже что-то начинаю понимать но не вьезжаю в структуру всего этого по ходу. Я никак не пойму: я сделал EJB бин mybin например, получил джар-файл, развернул его на сервере, я ,извините, туплю страшно, но никак не доходит как в JSP странице происходит подгружение домашних и удаленных интерфейсов созданных компонент, а если бы это было клиентское win32 приложение? Вот к примеру на компе А клиент, на компе В сервер с моим компонентом. Комп А пытаецца соединицца с В методами там lookup и т д это понятно, но как происходит подгружение <%@ page import="converter.Converter, converter.ConverterHome, Ведь клиент и не догадываецца о существовании этих интерфейсов, ну ладно допустим с жсп еще как-то мона понять там, на сервере одном с ежб и т д, но мне просто интересно, если вин32 прога, принцип тот же? тада не понимать. Я подозреваю что я ваще не в том направлении думаю. Может мою мысль ктонть пнет в нужном направлении? а то в голове каша. Спасибо заранее. ![]() ![]() зы А не подскажете какую версию нетбинс качать? с ж2ее или се ядром? по смыслу ее, но кто его знаить ![]() Это сообщение отредактировал(а) zone51 - 18.2.2006, 22:47 -------------------- The truth is out there |
|||
|
||||
powerOn |
|
||||||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Качай раздельно, так вернее будет. NetBeans 5.0.
Клиент очень даже догадывается. Чтобы клиент мог воспользоваться твоим EJB он должен быть скомпилирован с его интерфейсами. Ты пишешь интерфейсы для EJB, а потом отдаешь их тем, кто хочет использовать твой сервис. И клиенты естественно знают о том какие методы существуют.
В архиве .War твоего web приложения должна быть папка converter, а в ней Converter.class и ConverterHome.class. Из архива и загружает. Это сообщение отредактировал(а) MoonCat - 18.2.2006, 23:56 |
||||||
|
|||||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
То есть бизнес методы доступны клиентам? А если они секретные? Так что и исходники все раскрывать всем подряд? Ага, ну наконец то я понял откуда грузит..Спасибо огромное..И если вас не затруднит то еще вопроси к касательно JDBC а именно прописки драйверов базы данных в моем случае mySQL. В общем сакчал инсталлятор дров, поставил, залез в панель управления->администрирование->ODBC там че-то, прописал источник данных пользователя там под таким то именем, и не пойму как должна вылядеть строка инициализации драйвера во фрагменте DriverManager.forName("драйверСУБД") как выглядит "драйверСУБД"? какой формат эой строки? где-то в книге отыскал длинную строку что-то типа org.gji.mm.... и т д, а виндовозные базы ODBC тада зачем? Обьясните если не трудно.. ![]() зы http://www.netbeans.info/downloads/download.php NetBeans IDE 5.0 Installer netbeans-5_0-windows.exe (58.03 MB) ------------------------------------ NetBeans Profiler 5.0 Installer netbeans-profiler-5_0-win.exe (9.53 MB) ------------------------------------ NetBeans Mobility Pack 5.0 Installer netbeans_mobility-5_0-win.exe (22.49 MB)(не то) ----------------------------------- NetBeans IDE 5.0 + Application Server 8.2 Bundle Installer sjsas_pe-8_2_2005Q2-nb-5_0-fcs-bin-win.exe (101.17 MB) что из этого качать если учесть что буду пахать с жбоссом? Заранее большое спасибо. ![]() ![]() Это сообщение отредактировал(а) zone51 - 19.2.2006, 00:43 -------------------- The truth is out there |
|||
|
||||
powerOn |
|
||||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
1) Это сама IDE ставится на JDK, её достаточно что бы работать с JBoss, но толко версии 4.0.3. 2) Это профайлер, подключив его к IDE можно анализировать ход выполнения твоей программы, например какие ните в данный момент активны, все с грфическом виде... В общем наворот, но лично мне пока и без него не плохо живется. 3) Мобилити пак - надстройка к IDE чтобы проги писать под телефоны (J2ME). Там графичекий редактор форм и прочии прибамбасы. 4) IDE + Sun Java System Application Server 8.2 - таже IDE + сановский сервер в одном пакете. Для тех кому лень качать с www.java.sun.com и подключать сервер ручками, хотя это совсем не сложно. какчай 1, этого вполне достаточно для работы JBoss 4.0.3 Про mySQL пока ничего сказать не могу, еще руки до него не дошли...
Ты в интерфейсах пропиши только те бизнес методы, о которых должны знать клиенты. Или на крайний случай объяви секретные методы как private, тогда их точно никто не вызовет. И не забывай, что исходники клиентам не поставляются ![]() ![]() Это сообщение отредактировал(а) MoonCat - 19.2.2006, 11:13 |
||||
|
|||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
аа..ну наконец-то вьехал!
![]() ![]() Это сообщение отредактировал(а) zone51 - 19.2.2006, 13:27 -------------------- The truth is out there |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Уважаемый MoonCat! Извините, но появилась трабла, помогите если не трудно пожалуйста..
------------------------------------------------------------- compile-single-jsp: init: deps-module-jar: deps-ear-jar: deps-jar: library-inclusion-in-archive: library-inclusion-in-manifest: compile: log4j:WARN No appenders could be found for logger (org.apache.jasper.compiler.JspRuntimeContext). log4j:WARN Please initialize the log4j system properly. Compiling 1 source file to C:\tempnettest\shop\shop-war\build\generated\classes C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:7: package myshop does not exist import myshop.workerBean; C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:8: package myshop does not exist import myshop.workerRemoteHome; C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:67: cannot find symbol symbol : class Context location: class org.apache.jsp.test_jsp Context cont=new InitialContext(); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:67: cannot find symbol symbol : class InitialContext location: class org.apache.jsp.test_jsp Context cont=new InitialContext(); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:69: cannot find symbol symbol : class workerHome location: class org.apache.jsp.test_jsp workerHome work=(workerHome)PortableRemoteObject.narrow(obj,workerHome.class); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:69: cannot find symbol symbol : class workerHome location: class org.apache.jsp.test_jsp workerHome work=(workerHome)PortableRemoteObject.narrow(obj,workerHome.class); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:69: cannot find symbol symbol : class workerHome location: class org.apache.jsp.test_jsp workerHome work=(workerHome)PortableRemoteObject.narrow(obj,workerHome.class); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:69: cannot find symbol symbol : variable PortableRemoteObject location: class org.apache.jsp.test_jsp workerHome work=(workerHome)PortableRemoteObject.narrow(obj,workerHome.class); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:71: cannot find symbol symbol : class workerRemote location: class org.apache.jsp.test_jsp workerRemote remot=obj.findByPrimaryKey(); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:71: cannot find symbol symbol : method findByPrimaryKey() location: class java.lang.Object workerRemote remot=obj.findByPrimaryKey(); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:72: out is already defined in _jspService(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) String out=remot.gettest(); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:74: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:75: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:76: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" </body>\n"); ^ C:\tempnettest\shop\shop-war\build\generated\src\org\apache\jsp\test_jsp.java:77: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("</html>\n"); ^ 15 errors C:\tempnettest\shop\shop-war\nbproject\build-impl.xml:361: The following error occurred while executing this line: C:\tempnettest\shop\shop-war\nbproject\build-impl.xml:353: The following error occurred while executing this line: C:\tempnettest\shop\shop-war\nbproject\build-impl.xml:141: Compile failed; see the compiler error output for details. BUILD FAILED (total time: 1 second) ---------------------------------------------------------------------- Это компиляция жсп страницы, причем сначала я этот файл test_jsp.java не вижу, он появляецца после ошибок. -------------------- The truth is out there |
|||
|
||||
powerOn |
|
||||||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Как так не видишь??А что ты тогда компилируешь то? Какой состав проекта? В основном компилятор ругается на отсутствие пакетов, например:
говорит, что пакет myshop.workerBean и myshop.workerRemoteHome отсутствует. Я так понимаю, что это интерфейсы твоего EJB - workerBean. Их нужно доключить к проекту - не только импортировать (import myshop.workerBean;), но и чтобы компилятор смог найти эти файлы (myshop/workerBean.class и myshop/workerRemoteHome.class) в папке с твоими исходниками. далее:
Здесь компилятор не может понять, что это за "зверь" такой - Context. Подключи javax.ejb.* - интерфейс Context там объявлен. ну и т.д. |
||||||
|
|||||||
chief39 |
|
||||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Суть такова: Ты разрабатываешь Свой Бин. Это абстрактное понятие, которое включает в себя не только класс реализации, но и дескриптор развёртывания и два интерфейса(Это всё чтоб твой бин подходил под спецификацию и другие могли с ним работать как с EJBином). Итак. ты реализовал Класс. В нём логика, алгоритмы и проч. и проч. Но сам по себе - он всего лишь класс. Теперь из него надо сделать бин. Ведь человек сам по себе ещё не программер. Ему нужен ещё комп, сеть, ПО, неограниченные запасы кофе чтоб он мог функционировать ![]() Теперь ты создаёшь дескриптор в xml, который описывает как этому Бину(я говорю не о классе а о абстрактном собирательном бине вообще) влиться в контейнер(суть Джибосс). Говоришь: "Вот мой бин, называется он так, логика реализована в этом классе, а доступаться к нему можно через этот и этот интерфейсы(ну и проч. и проч.)". Потом ты деплоишь его. Он становится доступен на сервере. Теперь кто-то хочет его использовать. Он должен знать что предоставляет этот Бин и знает что ему нужен именно этот Бин. Для этого есть интерфейс. Клиенту дают интерфейс и говорят: "вот это Бин может делать - пользуй его". Когда тебе нужно переключить телевизор, ты берёшь ИК излучение и проч. физические сочтавляющие мира чтоб твой пульт смог работать(naming и проч. стандартные EJB службы, которые реализованы в классах.). Т.е. пульт должен тоже уметь испускать ИК лучи и кодировать их. Но ведь тебе нужен конкретный телевизор Сони, и работать ты хочешь с Сони. У тебя есть интерефейс, который тебе дали создателя телевизора - суть пульт. Ты берёшь его, и работаешь именно с Сони(именно с твоим Бином). "Родной" пульт знает что и как в ЕГО телевизоре. Вот и ты подключаешь интерфейс Бина на клиенте(Ты ведь не сможешь включить телек, пока не пойдёшь и не возьмёшь пульт и не создашь клиентскую систему "Коля с пультом"). Но тут сделали ещё такой хитрый ход: разделили на два интерфейса - хоум и ремоут. Ремоут предоставляет именно то, что тебе нужно(бизнес логику), а хоум - скорее служебный, для управления бином(создания его экземпляра и проч.) То есть надоедливые, но необходимые "мелочи" по управлению БИНОМ, а не прикладными данными вынесли в хоум. Поэтому клиенту нужны реализованные EJB сервисы в классах(чтоб он вообще мог работать с Jbossom) и конкретный пульт (из двух интерфейсов) + знание где твой сервер и как зарегистрирован этот бин на нём(имя). Вот. После, с помощью EJB серисов находишь этот сервер и получаешь объект по имени(реально это реализация хоум интерфейса). Ну мы-то уже знаем, что это наш пульт, вот и интерфейсик от него валяется. Хоум. ХОП! И преобразовали! Ну а теперь через нашу рабочую лошадку "хоум" создаём бин на сервере и получаем ссылку на него. Есссно, в виде ремоут интерфейса - он ведь у нас тоже есть. Хм... Вот у нас ремоут интерфейс ,который ссылается на Бин(который лежит на сервере). У нас на руках все бизнес методы, вот мы и шуруем как обычным объектом. Ну разве что понадобится что-то системное с бином сделать - для этого у нас хоум ещё валяется ![]() Насчёт odbc - зачем? Получится связка - бин-jdbc-odbc-база. Лучше бин-jdbc-база. В папке деплой создаёшь mysql-ds.xml (уточни у мускульщиков), в жибоссе образец ds есть для hsql-db. Описание датасорсов - там. А драйвер под конкретную базу - это джарик с классами, которые реализуют доступ к конкретной базе. Он желателен в либах джибосса. То есть в класспасе ![]() Например. В /server/default/lib лежит ojdbc14.jar - это дрова к ораклу. В /server/deploy/oracle-ds.xml шось такое:
Это датасорс. Аналогично датасорсу в ОДБЦ. Тут тебе и местонахождение сервера ДБ и класс драйвера и пароль/логин и опциональные хреновины. По мусклю - нужен джарик с драйвером и уточнения мускулистов. Это сообщение отредактировал(а) chief39 - 20.2.2006, 12:48 -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
||||
|
|||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Вот спасибо! только я не пойму зачем тогда прописка ьускулистых дров в консоле виндовоза ODBC источники данных.Разве это никак нельзя использовать? И самый главный вопрос..хотя это надо к мускулистам так это вид строки подключения вернее загрузки дров..Попробую разобрацца..а сли не трудно, как подрубать свои классы компонента в проект чтоб их видно было? мот в папку какую? спасибо.
![]() ![]() ![]() -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
[quote]
как подрубать свои классы компонента в проект чтоб их видно было? мот в папку какую? [/quote Обычно их кладут в папку с исхониками (src) твоего проекта. Или в папке, имя которой прописано в Manifest - е в ключе Class-path. И не забывай что если класс лежит в каком - то пакете, то он должен находиться в папке с именем этого пакета. напримр класс org.apache.jsp.test_jsp дожен располагаться в след. структуре каталогов: org/apache/jsp/test_jsp.class |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Ну общими усилиями проблему с классами я решил используя простое перетаскивание пакетов в дереве нетбинса(структуре папок проекта).На это терь не ругаецца. Я с удивлением обнаружил что моя книга по ежб 2002-го года, и поэтому этот пример
<% Context cont=new InitialContext(); Object obj=cont.lookup("test1"); workerHome work=(workerHome)PortableRemoteObject.narrow(obj,workerHome.class); work.create(); workerRemote remot=obj.findByPrimaryKey(); String out=remot.gettest(); %> Ваще не пашет. Я проверял.у меня в javax.ejb интерфейса Context нету, есть EJBContext и еще пару но они все абстрактные и как с ними работать непонятно. ЩЗаодно не подскажите современные способы законектицца хотя бы с ежб компонентой. Огромное спасибо. -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Странно, А класс InitialContext есть? Это сообщение отредактировал(а) MoonCat - 20.2.2006, 16:47 |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
неа, нема его вааще...гляди:
![]() и во ![]() ![]() ![]() ![]() -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Стооооооооооп! А в javax.naming???
Добавлено @ 17:14 Я напарил! Он именно в javax.naming!!!!!!!!!! ![]() Это сообщение отредактировал(а) MoonCat - 20.2.2006, 17:13 |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
угу..спасибо преогромное..есть..тока терь во така ботва:
Compiling 1 source file to C:\shop\test\test-war\build\generated\classes C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:67: cannot find symbol symbol : variable PortableRemoteObject location: class org.apache.jsp.index_jsp myejbRemoteHome work=(myejbRemoteHome)PortableRemoteObject.narrow(obj,myejbRemoteHome.class); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:68: create(java.lang.Long) in mypackage.myejbRemoteHome cannot be applied to () work.create(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:69: cannot find symbol symbol : method findByPrimaryKey() location: class java.lang.Object myejbRemote remot=obj.findByPrimaryKey(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:70: out is already defined in _jspService(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) String out=remot.gettest(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:70: cannot find symbol symbol : method gettest() location: interface mypackage.myejbRemote String out=remot.gettest(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:72: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:73: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("\n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:74: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("\n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:75: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:76: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:77: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" </body>\n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:78: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("</html>\n"); ^ 12 errors C:\shop\test\test-war\nbproject\build-impl.xml:361: The following error occurred while executing this line: C:\shop\test\test-war\nbproject\build-impl.xml:353: The following error occurred while executing this line: C:\shop\test\test-war\nbproject\build-impl.xml:141: Compile failed; see the compiler error output for details. BUILD FAILED (total time: 1 second) по ходу чота не находит опять..ща разбираюсь.. зы. Проблема решилась подключением lavax.rmi.*; но еще не все: Compiling 1 source file to C:\shop\test\test-war\build\generated\classes C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:69: create(java.lang.Long) in mypackage.myejbRemoteHome cannot be applied to () work.create(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:70: cannot find symbol symbol : method findByPrimaryKey() location: class java.lang.Object myejbRemote remot=obj.findByPrimaryKey(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:71: out is already defined in _jspService(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) String out=remot.gettest(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:71: cannot find symbol symbol : method gettest() location: interface mypackage.myejbRemote String out=remot.gettest(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:73: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:74: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("\n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:75: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("\n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:76: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:77: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" \n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:78: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write(" </body>\n"); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:79: cannot find symbol symbol : method write(java.lang.String) location: class java.lang.String out.write("</html>\n"); ^ 11 errors C:\shop\test\test-war\nbproject\build-impl.xml:361: The following error occurred while executing this line: C:\shop\test\test-war\nbproject\build-impl.xml:353: The following error occurred while executing this line: C:\shop\test\test-war\nbproject\build-impl.xml:141: Compile failed; see the compiler error output for details. BUILD FAILED (total time: 2 seconds) ![]() ![]() ![]() ![]() Это сообщение отредактировал(а) zone51 - 20.2.2006, 17:38 -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Ууух!
Не видит класса PortableRemoteObject. Он в javaх.rmi находится, импортируй его. Что это за книга такая, что примеры так плохо написаны? |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Н. Смирнов J2EE Проектирование и разработка кацца..
Я его уже импортировал..было 11 ош.а щас заметил грубую ошибку, я назвал свою строку именем out, а это предопределеный обьект жсп, терь во что: Compiling 1 source file to C:\shop\test\test-war\build\generated\classes C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:69: create(java.lang.Long) in mypackage.myejbRemoteHome cannot be applied to () work.create(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:70: cannot find symbol symbol : method findByPrimaryKey() location: class java.lang.Object myejbRemote remot=obj.findByPrimaryKey(); ^ C:\shop\test\test-war\build\generated\src\org\apache\jsp\index_jsp.java:71: cannot find symbol symbol : method testget() location: interface mypackage.myejbRemote String out1=remot.testget(); ^ 3 errors C:\shop\test\test-war\nbproject\build-impl.xml:361: The following error occurred while executing this line: C:\shop\test\test-war\nbproject\build-impl.xml:353: The following error occurred while executing this line: C:\shop\test\test-war\nbproject\build-impl.xml:141: Compile failed; see the compiler error output for details. BUILD FAILED (total time: 1 second) Что такое findByPrimaryKey() вааще и какие ему параметры нада? А метод create чота с парамеирами тута..странно. Заранее спасибо. -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Какой тип объекта obj ? Код в студию для: mypackage.myejbRemoteHome и mypackage.myejbRemote |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
<%
Context cont=new InitialContext(); Object obj=cont.lookup("test1"); myejbRemoteHome work=(myejbRemoteHome)PortableRemoteObject.narrow(obj,myejbRemoteHome.class); work.create(); myejbRemote remot=obj.findByPrimaryKey(); String out1=remot.testget(); %>
Нипонял ![]() ![]() чо за код? -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
![]() ![]() В общем, Object obj=cont.lookup("test1"); этой строчкой ты создал объект типа Object. И естественно метода findByPrimaryKey() у него нет. Ты должен привести его к нужному типу, вероятно к этому mypackage.myejbRemote. P.S. Ты уж не принимай близко к сердцу.... Что-то у тебя многова-то ошибок по фундаментальным знаниям Java, рекомендую прочитать пару книжек, это весьма полезно. Некоторые доки есть здесь в FAQ. Ты до того как за J2EE взялся, под J2SE программировал? Если ты только начинающий в Java программер, то рекомендую сначала заняться её основами. |
|||
|
||||
zone51 |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
блин..да я понял что ява код, просто стормозил, неожиданно как-то
![]() ![]() ![]() гг..я нипонял что значит в студию ![]() ![]() ![]() ------------------------------------------------------ Remote
--------------------------------------------------------------------- RemoteHome
А это myejbBean.java -----------------------------------------------------------------------------------------
в нетбинсах написано что все реализации в последний файл пихать..я сомневался но покорился ![]() ![]() Это сообщение отредактировал(а) Lamer George - 21.2.2006, 13:15 -------------------- The truth is out there |
||||||
|
|||||||
chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Правильно заставили ![]() Вся реализация - в классе. Класс + дескриптор - это, как бы, серверная часть. Оба интерфейса - это скорее клиентская. Поэтому всё должно быть реализовано в классе. Ну плюс файндер-методы, описанные в дескрипторе для энтити-бинов(Мне это дико не нравится, что методы из дескриптора генерятся, но ничего лучше сам придумать не смог бы ![]() -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Так, чт такое бин, дескрипторы и домашний удаленный инт-сы я разобрался, как работает тож. А может мне ктонть толково обьяснить что такое get и set методы и что такое эти файндер методы?
Я буду ![]() ![]() ![]() -------------------- The truth is out there |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
JavaBean - Это компонент, т.е. класс, который написан по определенным правилам.
Что бы класс стал JavaBean-ом он должен подчиняться этим правилам - Такова архитектура JavaBeans. Среди эти правил есть такое, что если класс имеет поле < тип ИМЯПОЛЯ > ( например String name; ), то чтобы изменить его значение, должен существовать метод < setИМЯПОЛЯ(тип) > для установки значения этого поля и метод < тип getИМЯПОЛЯ() > для получения значения этого поля. например:
Таким правилам подчиняются все JavaBeans, что позволяет регламентированно их использовать. Например, добавлять новые компоненты на плитру граф редактора форм. Все компоненты Swing - это JavaBeans Это сообщение отредактировал(а) MoonCat - 21.2.2006, 16:03 |
|||
|
||||
chief39 |
|
||||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Когда у тебя есть энтити Бин - это фактически управлялка таблицей. Хотя, согласно спецификации и прочая и прочая - "это абстрактное представление данных.... и т.п." Так вот. Твой служебный хоум интерфейс работает как бы с таблицей. А когда с помощью create или какого-либо find ты находишь строку - то эту строку представляет свежезозданный remote интерфейс. То есть ты десять раз вызовешь create - создастся десять записей и получишь десять ссылок на remote интерфейс. Ещё есть обязательный метод findByPrimaryKey. Его не надо описывать. В дескрипторе лишь важно указать поле для primary key. Этот метод создастся автоматически. Но тебе могут понадобиться методы, ищущие наборы строк или ищущие по хитрым критериям. Тогда ты описываешь этот метод в дескрипторе:
В хоуме:
Они все выбрасывают такой эксепшн. а название и список параметров должно совпасть с тем, что в дескрипторе у нас - во время деплоя это проверится. ты получишь Collection. Проходишь итератором и преобразуешь к remote интерфейсам. Если ничего не вернёт - коллекция будет пуста. Если возвращаемое значение укажешь не Сollection, a remote интерфейс - тогда ты уверен что поиск по имени уникален, если не найдёт ничего - бросит тебе файндер эксепшн. От так и описываешь свои файндеры ![]() надеюсь ты понимаешь, что раньше мы говорили о сессионных бинах и ентити, а вот эта информация - конкретно по энтити -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
||||
|
|||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Ради Бога простите что я такой тупой!
![]() [q]А когда с помощью create или какого-либо find ты находишь строку -[/q] тупик. Насчет гет и сет все понятно но тут.. У компоненты есть 2 инт-са: удаленный и ломашний. Домашний отвечает за создание обьекта, посте create создается экземпляр и передаецца ссылка н аего удаленный инт-с эт понятно..А уже в удаленном есть методы работающие с базой данных. так что я в тупике насчет того креате ищет строку..в удаленном инт-се могут быть метода vasya_pupkin например, ведь на этапе креате нет связи еще с бином и о какой базе и строках идет речь? зы. Ради бога не злитесь на меня..я работал и с ява и проги писал..но ежб сильно хитрожелтая весчь именно поэтому и хочу в ней разобрацца ![]() ![]() -------------------- The truth is out there |
|||
|
||||
chief39 |
|
||||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Это хорошо, что разобраться. Я и сам,честно говоря, EJB считаю хитрокрасным. Но ведь не боги сиё намудрили ![]()
ЭЭЭ... неее.. почему нету связи ? ![]() Чтоб легче было осмыслить, представь себе таким макаром для локального используемого класса: - класс бина - это класс бина, который имлементит оба интерфейса (в EJB не имплементим - связь между ними и её валидация происходит динамически) - хоум - это набор статик методов, которые управляют созданием или поиском существующих объектов данного класса. - ремоут - это набор не статик методов для работы с конкретным объектом, созданным при помощи статика ![]() Это всё аналогия, просто чтоб понять как выглядит лес, ибо деревья его и вправду частенько заслоняют. ![]() -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
||||
|
|||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
тэксс...при вызове креате в зависимости от типа компонента или создаецца новая строка или вытягиваецца старая..А компоненты бывают BMP и CMP это я знаю
![]() ![]() 1)Из жсп страницы или клиента, который знает интерфейс компонента(без реализаций)методом lookup или еще как то определяецца поиск бина по жнди имени, потом с ним устанавливаецца соединение, затем по соединению получаецца хоум интерфейс и уж потом получаецца ссылка на ремоут интерфейс методом креате и УЖ ПОТООМ вызываюцца конкретные методы через которые осущ. работа с бд.
Так, что за строка? Это строка энтити бина, который в эту строку и сохраняецца если сервер упадет(на то он и энтити), или это результат конкретного запроса к бд(непохоже)? Создает ремоут интерфейс для этой строки это ваще круто! То есть эта строка становицца как бы обьектом и этому обьекту копируется ремоут интерфейс? И ссылка на него даецца клиенту. А БД это на случай краха. В общем случае работа с бд по запросам там и тд происходит только из биснес методов. Я так понял. Хотя есть сомнения. И создаецца ли в этом случае строка для сессион компонент? Спасибо. -------------------- The truth is out there |
|||
|
||||
chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Результат запроса ты получишь файндом ![]() А файндером ты можешь получить то, что в базе до тебя было - то есть банальный селект, описанный на ejb-ql в дескрипторе.
Выборки происходят только через файндеры, а файндеры - это методы ХОУМА. Их сигнатура - в хоум интерфейсе, а тело создаётся автоматически на основе того, что в дескрипторе напишешь. Файндер - суть СЕЛЕКТ. Селект имеет смысл для таблицы, а не для записи. Соответственно, Из ХОУМА ты работаешь файндерами для выборки строк(ремоутов), или криэйтом для создания строки(ремоута). Таким образом, если быть предельно честным, то работа с БД происходит не только с помощью бизнес-методов но и хоума ![]() Для сессион бинов строки не создаются(где и зачем им создаваться?) Сессион бин без состояния вообще сродни джсп страничке - ему сказали что сделать - он сделал и "отцепитесь от меня, не видел я никаких ваших данных". Тут уж действительно хоум - лишь хоум, а все бизнес методы - в ремоуте. Так сказать, хоум - это фабрика ремоутов. То есть та аналогия, что я приводил ![]() -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Ладно, теперь давайте конкретизуем это все. Можете Вы мне привести человеческий код выборки строки из бд через бин. То есть код жсп страницы-клиента. А то я загрузился. Ща попробую разргузицца. Спсибо.
![]() ![]() -------------------- The truth is out there |
|||
|
||||
chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Это разные вещи ![]() код выборки будет в дескрипторе бина. он будет работать на благо какого-нить файндера. Который, в свою очередь, можно из жсп вызвать. А может и не жсп, а из толстого клиента или другого бина. Код выборки я выше привёл ![]() Он в xml. Между тегами <ejb-ql> и </ejb-ql> Там рядом и метод, для которого он старается в интерфейсе ХОУМ. ![]() После lookup'а home и приведения к своему интерфейсу хоум, у него можно дёргать этот метод - он вернёт(если такое есть в базе - иначе FinderException выбросит) ссылку на ремоут, которую к твоему ремоут надо преобразовать ![]() -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Фсё! Наконец до всего допёр и со всем разобрался! структура ежб работает! осталось тока дрова ждбц. Пробовал отписацца мускулистам, ни слова, а на форумах все хитрожелтое, подскажите если не трудно: mysql odbc-jdbc дрова это джар файл или через виндовозную консоль? как их юзать? Заранее спасибо..
![]() ![]() ![]() ![]() -------------------- The truth is out there |
|||
|
||||
zone51 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 17.2.2006 Репутация: нет Всего: 1 |
Товарищи, проблема соединения кацца решена, но мот ктонть обьяснит мне что это такое?
------------------------------------------------------ HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: null object name org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) javax.servlet.http.HttpServlet.service(HttpServlet.java:810) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) root cause java.lang.IllegalArgumentException: null object name org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:494) org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:638) org.jboss.invocation.jrmp.server.JRMPInvoker$MBeanServerAction.invoke(JRMPInvoker.java:805) org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:406) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:585) sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294) sun.rmi.transport.Transport$1.run(Transport.java:153) java.security.AccessController.doPrivileged(Native Method) sun.rmi.transport.Transport.serviceCall(Transport.java:149) sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460) sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701) java.lang.Thread.run(Thread.java:595) sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247) sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223) sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126) org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source) org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:119) org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:227) org.jboss.invocation.MarshallingInvokerInterceptor.invoke(MarshallingInvokerInterceptor.java:37) org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46) org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55) org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:169) org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86) $Proxy64.create(Unknown Source) org.apache.jsp.index_jsp._jspService(org.apache.jsp.index_jsp:70) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) javax.servlet.http.HttpServlet.service(HttpServlet.java:810) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) javax.servlet.http.HttpServlet.service(HttpServlet.java:810) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) note The full stack trace of the root cause is available in the Apache Tomcat/5.5 logs. Apache Tomcat/5.5 ---------------------------------------------------------------------------------- Заранее спасибо. -------------------- The truth is out there |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |