on 07-02-2008 10:21 PM
Hello, there!
I am trying to use xMII's 12.0 Message Services.
What I've done so far was:
- Created a Rule that should get a 'test' message, put it on a 'MessageTest' transaction parameter and redirect it to it
- On the workbench, I've created this 'MessageTest' transaction, with a 'ReadMessage' action that reads the parameter and writes it to a file
- Created a web form that posts an xml message to http://myServer:myPort/XMII/Illuminator?service=WSMessageListener&mode=WSMessageListenerServer&NAME=...
-After invoking this form, I received a "Sucessfully received webservice message" message back
But, not to my surprise, nothing happened. Neither I can see the message on Message Monitor, nor the file (the result from the transaction) is created.
Searching on the logs, I've seen these messages, which I suspect might be related to the problem:
Exception of type com.sap.sql.log.OpenSQLException caught: Cannot assign an empty string to host variable 6..
Processing HTTP request to servlet [CMSAdmin] finished with error. The error is: com.sap.engine.services.servlets_jsp.server.exceptions.WebIllegalStateException: The output is committed.
* at com.sap.engine.services.servlets_jsp.server.runtime.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:354)*
* at com.sap.xmii.servlet.Admin.service(Admin.java:84)*
* at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)*
* at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:117)*
* at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:62)*
* at com.sap.xmii.system.SecurityFilter.doFilter(SecurityFilter.java:100)*
* at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:58)*
* at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:373)*
* at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)*
* at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)*
* at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)*
* at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)*
* at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)*
* at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)*
* at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)*
* at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)*
* at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)*
* at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)*
* at java.security.AccessController.doPrivileged(Native Method)*
* at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)*
* at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)*
Does anyone have a clue on what might be happening?
Thanks a lot in advance!
Hi
If this is still not answered I guess the reason is that the message payload is blank. If there is no message in the payload then it might throw an exception.
Try putting in a valid XML in the Post action payload and then executing it. if you have already tried it can you send me your transaction that fails and I can check it out.
Best regards
Partha
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Eduardo
I dont think this is the problem.
You may search for anything like "WSMessageListenerServer" in the log as thats the class that gets called when a message is posted.
Best regards
Partha
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello, guys!
I finally found out where the problem is:
Could not save webservice message to the database
[EXCEPTION]
com.sap.sql.log.OpenSQLException: Cannot assign an empty string to host variable 6.
* at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:85)*
* at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:124)*
* at com.sap.sql.types.ClobResultColumn.setCharacterStream(ClobResultColumn.java:173)*
* at com.sap.sql.types.ClobResultColumn.setString(ClobResultColumn.java:161)*
* at com.sap.sql.jdbc.common.CommonPreparedStatement.setString(CommonPreparedStatement.java:511)*
* at com.sap.sql.sqlj.runtime.profile.ref.RTStatementJDBCPrepared.setString(RTStatementJDBCPrepared.java:359)*
* at com.sap.xmii.databuffer.sqlj.JCoDAO.saveWSMessageToDB(JCoDAO.sqlj:411)*
* at com.sap.xmii.databuffer.server.WSMessageServer.run(WSMessageServer.java:186)*
* at java.util.TimerThread.mainLoop(Timer.java:432)*
* at java.util.TimerThread.run(Timer.java:382)*
I couldn't solve it yet, though.
Any ideas?
Michael,
I using in WSMessageListener in some example and works fine. The only different is, that I have/had
this running with 12.0.4 >=.
Example:
1. Sequence with a TagQuery.
2. Sequence with a HTTP-Post.
3. Link the TagQuery.Result to the HTTP-Post.PostData.
4. Configure the HTTP-Post like this URL example:
http://<ServerName>:<Port>/XMII/Illuminator?Service=WSMessageListener&Mode=WSMessageListenerServer&Name=yourMessageName
5. Execute the trx.
If all will work fine, you will find the Message under "Messages Without Rules".
Hope this will help you a little.
Cheers
Pedro
Pedro, Christian,
thanks for answering.
I used the URL mentioned in the SAP help (same as Pedro included). As NAME I used the name of an existing Message Rule.
Then I filled the PostData in the link editor with either String or xml data, but the error remains.
I will try again tomorrow, maybe I have customized something wrong at the first try. Would be nice if it worked, as we are looking for an alternative to call a BLT directly as a webservice.
Michael
User | Count |
---|---|
13 | |
7 | |
3 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.