Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / MQ + Java / 11 сообщений из 11, страница 1 из 1
30.07.2008, 08:25
    #35459291
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
Всем привет!
Пишу сервлет, который должен чатать/писать в очередь, все по мануалу "WebSphere MQ using java"
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws  ServletException, IOException {
		try{
			MQEnvironment.hostname = this.hostname;
			MQEnvironment.channel = this.channel;
			MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES);
			qMgr = new MQQueueManager(qManager);
			int openOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT;
			MQQueue queue = qMgr.accessQueue("TEST.LS.IN", openOptions);
			MQMessage msg = new MQMessage();
			msg.writeUTF("first message!!!!!");
			MQPutMessageOptions pmo = new MQPutMessageOptions();
			queue.put(msg, pmo);
			queue.close();
			qMgr.disconnect();
			
			response.setContentType("text/html");
			PrintWriter out = response.getWriter();
			out.println("<html><body><h1>OK!!</h1></body></html>");
			out.close();
		} 
		catch (MQException ex) {
			System.out.println("A WebSphere MQ error occurred : Completion code " +
					ex.completionCode +
					" Reason code " + ex.reasonCode);
		}
		catch (java.io.IOException ex)
		{
			System.out.println("An error occurred whilst writing to the	message buffer: " + ex);
		}

при попытке выполнить вываливается интернал еррор (HTTP Status 500). и вот что пишет
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
exception 

javax.servlet.ServletException: Servlet execution threw an exception


root cause 

java.lang.NoClassDefFoundError: javax/resource/ResourceException
	com.ibm.mq.MQEnvironment.<clinit>(MQEnvironment.java:444)
	ren.tfb.ru.NbkiEngine.doGet(NbkiEngine.java:44)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause 

java.lang.ClassNotFoundException: javax.resource.ResourceException
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1359)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1205)
	java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	com.ibm.mq.MQEnvironment.<clinit>(MQEnvironment.java:444)
	ren.tfb.ru.NbkiEngine.doGet(NbkiEngine.java:44)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

сам вревые подобное делаю, помогите разобраться в проблеме.
...
Рейтинг: 0 / 0
30.07.2008, 17:36
    #35461141
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
Судя по всему, причина ошибки кроется в архитектуре сервлетов, потому что стендэлоун приложение работает нормально. Возможно не хватает каких-то классов, или я использую неверный способ подключения MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_CLIENT); .
Неужели никто не делал таких сервлетов?!
...
Рейтинг: 0 / 0
30.07.2008, 17:43
    #35461172
riman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
Какой сервер приложений и версия?
...
Рейтинг: 0 / 0
31.07.2008, 09:34
    #35461996
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
Какого сервера приложений?
Стоит IBM Webshpere MQ v6, сервлет играется на TomCat 5.5.23.
...
Рейтинг: 0 / 0
31.07.2008, 10:33
    #35462138
riman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
Tomcat - не полноценный сервер прилолжений. Перейдите на WebSphere AS или на WebLogic. В общем, любой другой, который поддерживает спецификацию J2EE v1.3 or higher.
Или подсуньте в shared libs tomcat'a клиентские библиотеки MQ.
...
Рейтинг: 0 / 0
31.07.2008, 11:22
    #35462392
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
в c:\apache-tomcat-5.5.23\shared\lib\ закинул файлы из c:\Program Files\IBM\WebSphere MQ\Java\lib\
рестартанул сервис томката, все равно не пашет. Переход на другие сервера приложений невозможен.
...
Рейтинг: 0 / 0
31.07.2008, 11:34
    #35462465
riman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
ren2000в c:\apache-tomcat-5.5.23\shared\lib\ закинул файлы из c:\Program Files\IBM\WebSphere MQ\Java\lib\
рестартанул сервис томката, все равно не пашет. Переход на другие сервера приложений невозможен.

Клиентские - те, которые используются в вашем standalone приложении. Оно ведь как-то у вас работает? Можно класть их не в shared libs, а в classpath веб-приложения, для пущей надежности. Если уж и это не поможет, значит, да, надо переходить на JBoss, хотя бы.
...
Рейтинг: 0 / 0
31.07.2008, 11:49
    #35462530
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
в standalone приложении используется только com.ibm.mq.jar.
а вот про "classpath веб-приложения" не понял, разве сервлет не спользует перемеые окружения. В переменной окружения CLASSPATH явно прописан путь к com.ibm.mq.jar
...
Рейтинг: 0 / 0
31.07.2008, 12:34
    #35462743
riman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
ren2000в standalone приложении используется только com.ibm.mq.jar.
а вот про "classpath веб-приложения" не понял, разве сервлет не спользует перемеые окружения. В переменной окружения CLASSPATH явно прописан путь к com.ibm.mq.jar
это в FAQ по яве. Закиньте этот jar в папку WEB-INF/lib приложения и потестируйте.
...
Рейтинг: 0 / 0
31.07.2008, 12:54
    #35462867
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
riman ren2000в standalone приложении используется только com.ibm.mq.jar.
а вот про "classpath веб-приложения" не понял, разве сервлет не спользует перемеые окружения. В переменной окружения CLASSPATH явно прописан путь к com.ibm.mq.jar
это в FAQ по яве. Закиньте этот jar в папку WEB-INF/lib приложения и потестируйте.

так он там и есть. я его при разработке в проект добавил, он потом сам в war файле появился.

Ну чтож, судя по всему, придется делать приложение под Oracle AS, т.к. такой имеется в наличии. Но это в будущем, а пока педется standalone обойтись.
...
Рейтинг: 0 / 0
31.07.2008, 13:15
    #35462939
ren2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MQ + Java
Ан нет!!! Прошу прощения, сейчас передеплоил - все работает. Спасибо за помощь, друг!
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / MQ + Java / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]