JMS: Looking up queue from client with JNDI
I have written an MDB which takes messages from a queue and processes them. The messages are posted onto the queue by a java client, which looks up the queue using JNDI.
My problem is that I don't know how the queue is registered with JNDI. Below are the EJB / OC4J config files. Are these sufficient to make the queue accessible from a Java client which is not running within OC4J? If so, what is the lookup string?
Thanks!!
ejb-jar.xml contains the following entry:
<message-driven>
<ejb-name>PODProcessor</ejb-name>
<ejb-class>XXX.core.server.integration.PODProcessor</ejb-class>
<transaction-type>Container</transaction-type>
<message-driven-destination>
<destination-type>javax.jms.Queue</destination-type>
</message-driven-destination>
</message-driven>
orion-ejb-jar.xml contains this entry:
<message-driven-deployment name="PODProcessor" connection-factory-location="java:comp/resource/agenttojms/QueueConnectionFactories/aqQcf" destination-location="java:comp/resource/agenttojms/Queues/PodQueue">
</message-driven-deployment>
application.xml contains this entry:
<resource-provider class="oracle.jms.OjmsContext" name="agenttojms">
<description>OJMS/AQ</description>
<property name="datasource" value="jdbc/MQEmulatedDS"></property>
</resource-provider>
The data source is also set up in the data-sources.xml
The EJB deploys OK.
My client code will look something like this:
QueueConnectionFactory queueConnectionFactory = (QueueConnectionFactory)jndiContext.lookup("javax.jms.QueueConnectionFactory");
QueueConnection queueConnection = queueConnectionFactory.createQueueConnection();
Queue queue = (Queue) jndiContext.lookup( "WHAT GOES IN HERE?" );
QueueSession queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
QueueSender queueSender = queueSession.createSender(queue);
// etc
I don't know if you ever got a response, but here's how I have done it. Your client code should look like this:
QueueConnectionFactory queueConnectionFactory = (QueueConnectionFactory)jndiContext.lookup("java:comp/resource/agenttojms/QueueConnectionFactories/aqQcf");
QueueConnection queueConnection = queueConnectionFactory.createQueueConnection();
Queue queue = (Queue) jndiContext.lookup( "java:comp/resource/agenttojms/Queues/PodQueue" );
QueueSession queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
QueueSender queueSender = queueSession.createSender(queue);
Similar Messages
-
Re-map print queues for clients with powershell
We reinstalled printer queues (share printer name is the same as before) and drivers on server, 99% users can't print properly, is a way to re-map print queues for all clients with PowerShell equivalent to remove and map again?
Hi Brent,
To re-map all of the printers, please check this script written by Boe Prox:
<#
.SYNOPSIS
Logon Script to migrate printer mapping
.DESCRIPTION
Logon Script to migrate printer mappings
.NOTES
Author: Boe Prox
Create: 09 NOV 2012
Modified:
Version 1.0 - Initial Script Creation
1.1 Added Header Text for CSV file
#>
Param (
$newPrintServer = "Server2",
$PrinterLog = "\\LogSVR\PrintMigration$\PrintMigration.csv"
<#
#Header for CSV log file:
"COMPUTERNAME,USERNAME,PRINTERNAME,RETURNCODE-ERRORMESSAGE,DATETIME,STATUS" |
Out-File -FilePath $PrinterLog -Encoding ASCII
#>
Try {
Write-Verbose ("{0}: Checking for printers mapped to old print server" -f $Env:USERNAME)
$printers = @(Get-WmiObject -Class Win32_Printer -Filter "SystemName='\\\\Server1'" -ErrorAction Stop)
If ($printers.count -gt 0) {
ForEach ($printer in $printers) {
Write-Verbose ("{0}: Replacing with new print server name: {1}" -f $Printer.Name,$newPrintServer)
$newPrinter = $printer.Name -replace "Server1",$newPrintServer
$returnValue = ([wmiclass]"Win32_Printer").AddPrinterConnection($newPrinter).ReturnValue
If ($returnValue -eq 0) {
"{0},{1},{2},{3},{4},{5}" -f $Env:COMPUTERNAME,
$env:USERNAME,
$newPrinter,
$returnValue,
(Get-Date),
"Added Printer" | Out-File -FilePath $PrinterLog -Append -Encoding ASCII
Write-Verbose ("{0}: Removing" -f $printer.name)
$printer.Delete()
"{0},{1},{2},{3},{4},{5}" -f $Env:COMPUTERNAME,
$env:USERNAME,
$printer.Name,
$returnValue,
(Get-Date),
"Removed Printer" | Out-File -FilePath $PrinterLog -Append -Encoding ASCII
} Else {
Write-Verbose ("{0} returned error code: {1}" -f $newPrinter,$returnValue) -Verbose
"{0},{1},{2},{3},{4},{5}" -f $Env:COMPUTERNAME,
$env:USERNAME,
$newPrinter,
$returnValue,
(Get-Date),
"Error Adding Printer" | Out-File -FilePath $PrinterLog -Append -Encoding ASCII
} Catch {
"{0},{1},{2},{3},{4},{5}" -f $Env:COMPUTERNAME,
$env:USERNAME,
"WMIERROR",
$_.Exception.Message,
(Get-Date),
"Error Querying Printers" | Out-File -FilePath $PrinterLog -Append -Encoding ASCII
Quote from:
Use a PowerShell Logon Script To Update Printer Mappings
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Support, contact [email protected] -
Cannot transfer file into DB from client with webutil
Transfering file from client to DB will fail if the file is at a network path(not be mapped) or path contains Chinese character. for instance:
\\server\temp\test.bmp
C:\(Chinese character)\test.bmp
But it can work fine with the file list below ( I map \\server\temp to T: ) :
C:\test.bmp
T:\test.bmp
Thanks for any reply!I've got a similar problem related to this issue. Using the Client_Get_File_Name function to return a UNC path name and file the value returned drops the first backslash so instead of:
\\server\directory\file.bmp
I get:
\server\directory\file.bmp
Similar to Sunny, we don't want users to have to copy files to their local drives in order to load them into the database. We use Client_Get_File_Name to identify the file the user wants to load and then we use Read_Image_File to load it. Its passing the incorrect value into Read_Image_File that is causing our problem.
Is there a workaround for this, can we stop Client_Get_File_Name from losing the first backslash?
Thanks
Richard -
Reading a global variable from tomcat with JNDI. Example not working
Hi you can help me to make this example work?
Context initCtx = new InitialContext();
Context envCtx = (Context)initCtx.lookup("java:comp/env");
Object o = envCtx.lookup("testvariable");
<GlobalNamingResources>
<Environment name="testvariable" type="java.lang.Boolean" value="false"/>
Nice greetings ChristianI found out that in addition to having the JNDI lookup code, you have to
- have the environment variable declared in the app server configuration
- have a resource-env-ref entry in your webapp module
- have the application container bind your named variable with the global variable
I am using tomcat 5.5, and have done the following. with success.
the following example uses the default sample environment variable in the tomcat server.xml
in tomcat server.xml:
<GlobalNamingResources>
<Environment
name="simpleValue"
type="java.lang.Integer"
value="30"/>
</GlobalNamingResources>
in my application's web.xml:
<resource-env-ref>
<description>Test read resource environment variable</description>
<resource-env-ref-name>simpleValue</resource-env-ref-name>
<resource-env-ref-type>java.lang.Integer</resource-env-ref-type>
</resource-env-ref>
in my META-INF/context.xml (or otherwise, in tomcat's context deployment configuration)
<ResourceLink name="simpleValue" global="simpleValue"
type="java.lang.Integer"/>
Note: in theory, the named resource by your web app could be different from the global environment variable, but here they are the same 'simpleValue'
This is the really important step, that with out it, nothing works.,
the context.xml is known to work with tomcat when it exists in META-INF/context.xml inside the .war file (i use war files to deploy, but you should be able to create META-INF/context in an unpacked webapp directory too, and tomcat will find it.,
I can not say what it is like for other app servers, but this mapping step is the critical point that i discovered after A LOT of hair pulling.
then, make use of it, i created a jndiTest.jsp:
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.naming.InitialContext" %>
<%@ page import="javax.naming.NamingException" %>
<%
try {
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:/comp/env");
Object o = ctx.lookup("simpleValue");
%>
<%=o%><br>
<%
catch (NamingException ex) {
System.err.println(ex);
%>
since my server.xml defines the value for 'simpleValue' to be 30, this page displays 30 -
Jboss & Looking up DataSource from Client (not in Jboss)
I have a project that will be describered as follows,
1. Using Jboss server in which a DataSource is deployed
2. Developing the Java client that looking up the above DataSource.
My little problem is the java client is not deployed in Jboss, that is the normal java program. So can the client look up the DataSouce?
Any help is appropriate!Actually I was wrong, and it makes sense why. This post is from
David Jencks, if I recall he is the author of the JCA subsystem on jboss. This was his post on the jboss web-board (Had to look cause I tried it). I hope that you can develop some session facade beans to do whatever you would like. : )
davidjencks
Posts: 1,927
Registered: Jun, 2001
Re: Lookup DataSource from remote client Posted: Apr 2, 2003 12:31 AM
This is impossible and an extremely bad idea for numerous reasons.
Write a session bean to do the db work, and call it from the remote clients. -
Printing From Client With Only libcups Installed
I setup a working print server and installed only libcups (per wiki) on my desktop. Printing from my desktop works for in firefox, open office, and several other programs with the notable exception of Adobe Reader which tries to use an 'lpr' command.
I cannot print from the command line using lpr either.
Desktop:~$ lp -P ...
bash: lp: command not found
and
Desktop:~$ lpr -P ...
bash: lpr: command not found
Does anyone know how other programs are managing to print without lp/lpr?I suspect they use libcups directly. Libcups's cups.h includes a function "cupsPrintFile()" which I suspect they call to print a file ... after the necesary initializations.
Why would you not want to install cups to get the tools to use this properly?
Last edited by Trilby (2012-10-26 02:05:42) -
Receiving Unknown Byte Messages in JMS Queues from MDM 2.0
I am receiving unknown Byte messages in JMS CCB MDM Queue from MDM 2.0.
It keeps on increasing. Please let me know how to avoid this. and what may be the error.Hi,
Set these flags with in your startup script like setDomainEnv.sh file or startWebLogic.sh file.
set these option near java_properties or options.
once you set please restart and one more point I missed here once you set these debug flags change the logging patter patter to debug mode under
server >> logging
change all the logging severity to debug mode and collect the debug.
Regards,
Kal -
JMS destination and queue in jndi.properties
I am using activemq to create a very simple jms application.
But there is a point I have not understand.The administered connection factory object that I use is org.activemq.jndi.ActiveMQInitialContextFactory which is the ActiveMq specific object. Do I have to do the same with the destination object?I read that Destination is also an administered object so I have to use an object of the ActiveMq? Specifically in the jndi properties where I define the queue property the value must be:
1.an activeMq object
2.a java class that implements the javax.jsm.Queue interface
3.a physical name of another server?
and in the code where I look up the destination object
Destination destination = (Destination) jndiContext.lookup(queueProp);What exactly will be the queueProp? I would appreciate an example
Thanking you in advance.I've read the documentation but I am afraid I miss some points.
First of all I use the following code from an example in the net where the <b> activemq.jar is >/b> used and the jndi.properties is not used at all and the following code is working:package jms;
import org.activemq.ActiveMQConnectionFactory;
import javax.jms.Connection;
import javax.jms.DeliveryMode;
import javax.jms.Destination;
import javax.jms.ExceptionListener;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageConsumer;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
* Hello world!
public class App {
public static void main(String[] args) throws Exception {
thread(new HelloWorldBroker(args), true);
Thread.sleep(1000);
thread(new HelloWorldProducer(), false);
thread(new HelloWorldProducer(), false);
thread(new HelloWorldConsumer(), false);
Thread.sleep(1000);
thread(new HelloWorldConsumer(), false);
Thread.sleep(1000);
thread(new HelloWorldConsumer(), false);
thread(new HelloWorldProducer(), false);
Thread.sleep(1000);
thread(new HelloWorldProducer(), false);
thread(new HelloWorldConsumer(), false);
public static void thread(Runnable runnable, boolean daemon) {
Thread brokerThread = new Thread(runnable);
brokerThread.setDaemon(daemon);
brokerThread.start();
public static class HelloWorldBroker implements Runnable {
private final String[] args;
public HelloWorldBroker(String[] args) {
this.args = args;
public void run() {
org.activemq.broker.impl.Main.main(args);
public static class HelloWorldProducer implements Runnable {
public void run() {
try {
// Create a ConnectionFactory
ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");
// Create a Connection
Connection connection = connectionFactory.createConnection();
connection.start();
// Create a Session
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// Create the destination (Topic or Queue)
Destination destination = session.createQueue("TEST.FOO");
// Create a MessageProducer from the Session to the Topic or Queue
MessageProducer producer = session.createProducer(destination);
producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
// Create a messages
String text = "Hello world! From: " + Thread.currentThread().getName() + " : " + this.hashCode();
TextMessage message = session.createTextMessage(text);
// Tell the producer to send the message
System.out.println("Sent message: "+ message.hashCode() + " : " + Thread.currentThread().getName());
producer.send(message);
// Clean up
session.close();
connection.close();
catch (Exception e) {
System.out.println("Caught: " + e);
e.printStackTrace();
public static class HelloWorldConsumer implements Runnable, ExceptionListener {
public void run() {
try {
// Create a ConnectionFactory
ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");
// Create a Connection
Connection connection = connectionFactory.createConnection();
connection.start();
connection.setExceptionListener(this);
// Create a Session
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
// Create the destination (Topic or Queue)
Destination destination = session.createQueue("TEST.FOO");
// Create a MessageConsumer from the Session to the Topic or Queue
MessageConsumer consumer = session.createConsumer(destination);
// Wait for a message
Message message = consumer.receive(1000);
if (message instanceof TextMessage) {
TextMessage textMessage = (TextMessage) message;
String text = textMessage.getText();
System.out.println("Received: " + text);
} else {
System.out.println("Received: " + message);
consumer.close();
session.close();
connection.close();
} catch (Exception e) {
System.out.println("Caught: " + e);
e.printStackTrace();
public synchronized void onException(JMSException ex) {
System.out.println("JMS Exception occured. Shutting down client.");
}But I want to make it work with jndi.properties.
So I am trying to use a code where connectionFactory and Destination are loaded from the jndi properties.After experimenting with code
the following is working
try {
connectionFactory = (ConnectionFactory) jndiContext.lookup("connectionFactory");
Destination destination = (Destination) jndiContext.lookup("QUEUE/MYQUEUE");
Connection connection = connectionFactory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);if only I go to the activeqm/bin folder and open the broker.If I did that in the previous code(with no jndi prop)
there was an exception that was saying that the port was already used.So I do not understand why in the one case opening broker is necessary for the connection and on the other hand it causes a problem.
Moreover in the case that I invoke broker from bin folder. In this case I would like to ask a question.The activemq.xml is necessary? If yes it is there where we define the queue?
If not where else apart from the jndi.properties do we define queue?
Please if is possible provide me with an example of the necessary places that we define a queue.
Thank you -
Error while using webmethod JMS provider with JNDI
Hi,
I am using webmethod JMS provider (not SAP JMS) with JNDI to connect to webmethod with XI. Central J2EE adapter engine is used and the comm chaneel is configured in with appropriate Provider JNDI Server address, initial context factory, Name of queue connection factory etc.
While activated the adapter short log shows: Adapter has not provided any status information about this channel"
In the detailed log following error message is displayed: "Obtained connection factory: null#"
#1.5 #001A4BAC31000052000001520000152200045090BF28DACA#1214482519514#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC31000052000001530000152200045090BF28DB65#1214482519514#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Debug##Plain###Looking up connection factory under name NAIP_XIQueueConnectionFactory#
#1.5 #001A4BAC31000052000001540000152200045090BF28E42E#1214482519516#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Debug##Plain###Obtained connection factory: null#
#1.5 #001A4BAC31000052000001550000152200045090BF28E4B3#1214482519516#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC31000052000001560000152200045090BF28E528#1214482519516#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeConnectionFactoryInvocations()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC31000052000001570000152200045090BF28E5A9#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeConnectionFactoryInvocations()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Info##Java###Sucessfully executed CF invocations for connection factory object: for profile: #2#<null>#ConnectionProfile of channel: CC_RCV_JMS_SAPJNDIon node: 3010950 having object id: e4413a5265a436459e271d5e0dd4859b#
#1.5 #001A4BAC31000052000001580000152200045090BF28E64E#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeConnectionFactoryInvocations()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC31000052000001590000152200045090BF28E6CA#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC310000520000015A0000152200045090BF28E741#1214482519517#com.sap.aii.adapter.jms.core.common.StringUtils##com.sap.aii.adapter.jms.core.common.StringUtils.isBlank(String str)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC310000520000015B0000152200045090BF28E7C3#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Debug##Plain###Creating connection...#
#1.5 #001A4BAC310000520000015C0000152200045090BF28EB51#1214482519518#com.sap.aii.adapter.jms.core.channel.AdapterImpl##com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(Channel cpaChannel)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Warning##Java###Catching #1#java.lang.NullPointerException
at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection(ConnectorImpl.java:198)
at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.doConnect(ConnectorImpl.java:166)
at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.doConnect(JndiConnectorImpl.java:186)
at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.connect(ConnectorImpl.java:151)
at com.sap.aii.adapter.jms.core.channel.ChannelImpl.doStart(ChannelImpl.java:235)
at com.sap.aii.adapter.jms.core.channel.ChannelImpl.start(ChannelImpl.java:154)
at com.sap.aii.adapter.jms.core.channel.AdapterImpl.doAddUpdateChannel(AdapterImpl.java:404)
at com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(AdapterImpl.java:376)
at com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl$1.run(ChannelLifecycleCallbackImpl.java:51)
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:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
#1.5 #001A4BAC310000520000015D0000152200045090BF28EC6A#1214482519518#com.sap.aii.adapter.jms.core.channel.AdapterImpl##com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(Channel cpaChannel)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Error##Plain###[[ChannelName:CC_RCV_JMS_SAPJNDI,ChannelId: e4413a5265a436459e271d5e0dd4859b]] Error adding/updating channel.#
#1.5 #001A4BAC310000520000015E0000152200045090BF28ECF8#1214482519518#com.sap.aii.adapter.jms.core.channel.AdapterImpl##com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(Channel cpaChannel)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC310000520000015F0000152200045090BF28ED76#1214482519519#com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl##com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl.channelAdded().run()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC3100005F000000660000152200045090BF65478A#1214482523474#com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl.channelAdded(Channel channel)#AAAAAAAAA#108##n/a##002ee500437911dd99cf001a4bac3100#SAPEngine_Application_Thread[impl:3]_29##0#0#Path##Plain###Exiting method#
Please let me know anyone has come accross the problem or has idea how to solve it. Thanks.Hi,
Ask ur basis admin to restart JMS adpater From Vis administrator and try again to activate the comm channel.
Hope this will solve ur problem and once again check connection fatcory and Queue name provided by Webmethod admin.
Regards,
Srini -
XI to IBM Websphere Default JMS Provider with JNDI
Hello everybody!
We face a problem with connecting SAP XI to IBM WebSphere Default JMS Provider (need to send a message from XI to WebSphere JMS and receive the response).
We have the following versions installed:
SAP XI: 7.0 SP8 , Sun JDK 1.4.2
IBM WebSphere: IBM WebSphere Application Server ND, 6.0.2.17, J2RE 1.4.2 IBM
We cannot set the JMS adapter of SAP XI for conecting with IBM WebSphere Default JMS Provider. The Communication Channel has erroneous state (at runtime) and the Communication Channel Monitoring tool displays the error message as described below (under "Variant 1" and "Variant 2" sub-headings) depending on the settings performed.
For connecting, the following JMS-provider settings were used at IBM WebSphere side:
JMS Providers: Default Messaging Provider
Queue Connection Factories: name:QueueConnectionFactory, jndi:jms/QueueConnectionFactory, provider: Default Messaging Provider
Queues: name Queue, jndi: jms/Queue, provider: Default Messaging Provider
The XI communication channel (and associated JMS-adapter) was set as Variants 1 and 2 show. Settings for both cases and received error messages were the following:
<b>Variant 1.</b>
Adapter type: JMS
Type: Receiver
JMS Provider: Access JMS Provider with JNDI (Java Naming and Directory Interface)
JNDI Lookup Name of QueueConnectionFactory: jms/QueueConnectionFactory
JNDI Lookup Name of JMS Queue: jms/Queue
Name of JNDI Initial Context Factory: com.sap.engine.services.jndi.InitialContextFactoryImpl
JNDI Server Address: iiop://WEBSPHERE.HOST:2809/
As the result, the Communication Channel Monitoring displays that the channel has erroneous state and the following error message is written:
"Error during channel initialization; exception trace: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of jms/QueueConnectionFactory.
at com.sap.engine.services.jndi.implserver.ServerContextImpl.lookup(ServerContextImpl.java:649)"
<b>Variant 2</b>
The same settings as in Variant 1 above, were used and additionally the following settings were done:
- Name of JNDI Initial Context Factory: com.ibm.websphere.naming.WsnInitialContextFactory
- The archive aii_af_jmsproviderlib.sda containing libraries required by WsInitialContextFactory, was deployed to the SAP WebAS where the XI is running. Those libraries were taken from WebSphere Application Server Pluggable Application Client installation package (described in the article "WebSphere Application Server Pluggable Application Client" located at http://www-128.ibm.com/developerworks/websphere/library/techarticles/0409_bhogal/0409_bhogal.html)
- Also, as it is recommended in the referred article, the files required by IBM's iiop protocol (ibmext.jar ibmorb.jar ibmorbapi.jar) were put to the folder jre/lib/endorsed of the server(Sun JVM 1.4.2 is used by SAP WebAS / XI).
As the result, the Communication Channel Monitoring displays that the channel has erroneous state as well and the following error message is written:
"No adapter registered for this channel"
We have not found the recommended solution either in SDN forums or in Internet in general. Is it yet possible to connect SAP XI to IBM WebSphere Default JMS Provider having mentioned product versioning? If yes, what settings have to be performed?IBM Websphere Default JMS Provider which is installed alongwith the application server is nothing but a scaled down version of the IBM WebSphere MQSeries. you should be able to connect to it with the same settings that can be used for a separate MQSeries server connectivity from XI.
-
JNDI Names of JMS server's queue not replicating to cluster
Am having some trouble configuring a JMS Server and Queues in a clustered development
environment. It is a simple cluster of 2 servers (Server1 and Server2) both on
a single machine.
The "JobServer" JMS Server is targeted to "Server1 (migratable)". All the JNDI
names for the Queues appear in the JNDI tree of Server1, but not in Server2.
When the sending of a message is attempted on Server2, the following occurs:
javax.naming.NameNotFoundException: While trying to lookup 'jms.STARSIIPostQueue'
didn't find subcontext 'jms' Resolved ; remaining name 'jms/STARSIIPostQueue'
at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:858)
This may be a problem with the cluster configuration, but I haven't been able
to see anything wrong with it.
Any and all help will be appreciated.
There is the Config.xml file:
<?xml version="1.0" encoding="UTF-8"?>
<Domain ConfigurationVersion="8.1.2.0" Name="mydomain">
<Server ExtraEjbcOptions="-J-mx512m" ListenAddress=""
ListenPort="7001" Name="myserver" NativeIOEnabled="true"
ServerVersion="8.1.2.0" StdoutDebugEnabled="true" StdoutSeverityLevel="64">
<SSL Enabled="false" HostnameVerificationIgnored="false"
IdentityAndTrustLocations="KeyStores" ListenPort="7002" Name="myserver"/>
<Log Name="myserver" NumberOfFilesLimited="true"/>
</Server>
<Security Name="mydomain"
PasswordPolicy="wl_default_password_policy"
Realm="wl_default_realm" RealmSetup="true">
<weblogic.security.providers.authentication.DefaultAuthenticator
Name="Security:Name=myrealmDefaultAuthenticator" Realm="Security:Name=myrealm"/>
<weblogic.security.providers.authentication.DefaultIdentityAsserter
ActiveTypes="AuthenticatedUser"
Name="Security:Name=myrealmDefaultIdentityAsserter" Realm="Security:Name=myrealm"/>
<weblogic.security.providers.authorization.DefaultRoleMapper
Name="Security:Name=myrealmDefaultRoleMapper" Realm="Security:Name=myrealm"/>
<weblogic.security.providers.authorization.DefaultAuthorizer
Name="Security:Name=myrealmDefaultAuthorizer" Realm="Security:Name=myrealm"/>
<weblogic.security.providers.authorization.DefaultAdjudicator
Name="Security:Name=myrealmDefaultAdjudicator"
Realm="Security:Name=myrealm" RequireUnanimousPermit="false"/>
<weblogic.security.providers.credentials.DefaultCredentialMapper
Name="Security:Name=myrealmDefaultCredentialMapper" Realm="Security:Name=myrealm"/>
<weblogic.management.security.authentication.UserLockoutManager
Name="Security:Name=myrealmUserLockoutManager" Realm="Security:Name=myrealm"/>
<weblogic.management.security.Realm
Adjudicator="Security:Name=myrealmDefaultAdjudicator"
Auditors="Security:Name=myrealmSTARSIIAuditor"
AuthenticationProviders="Security:Name=myrealmSTARSIIAuthenticator|Security:Name=myrealmDefaultAuthenticator|Security:Name=myrealmDefaultIdentityAsserter"
Authorizers="Security:Name=myrealmDefaultAuthorizer|Security:Name=myrealmSTARSIIAuthorizer"
CredentialMappers="Security:Name=myrealmDefaultCredentialMapper"
DefaultRealm="true" DisplayName="myrealm"
FullyDelegateAuthorization="true"
Name="Security:Name=myrealm"
RoleMappers="Security:Name=myrealmDefaultRoleMapper" UserLockoutManager="Security:Name=myrealmUserLockoutManager"/>
<gov.fns.starsii.common.security.authentication.STARSIIAuthenticator
ControlFlag="SUFFICIENT"
Name="Security:Name=myrealmSTARSIIAuthenticator" Realm="Security:Name=myrealm"/>
<gov.fns.starsii.common.security.authorization.STARSIIAuthorizer
ExemptUri="/common/,/images/,/warning.do,/login.do"
Name="Security:Name=myrealmSTARSIIAuthorizer"
PolicyDeploymentEnabled="false"
Realm="Security:Name=myrealm" Verbose="false" denyPermNotFound="true"/>
<gov.fns.starsii.common.security.audit.STARSIIAuditor
Name="Security:Name=myrealmSTARSIIAuditor" Realm="Security:Name=myrealm"/>
</Security>
<EmbeddedLDAP
Credential="{3DES}aD+gV9rRggnoShH/kWurILaHTBP/z0jVoZHtp/hU1xI=" Name="mydomain"/>
<SecurityConfiguration
Credential="{3DES}mhxP4PeuUHmoX6Aggpj5SNB+AX16Gaol8dOfUzXu7xM8CFNASyNdYIOoqtlqPAZvfZgB14KBtY8MkdKGu/iWFq1xQ07walY8"
Name="mydomain" RealmBootStrapVersion="1"/>
<Realm FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
<FileRealm Name="wl_default_file_realm"/>
<PasswordPolicy Name="wl_default_password_policy"/>
<JDBCConnectionPool
DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
Name="STARSII BRSB Pool"
Password="{3DES}9pslRpr051lR9/NEKdanag=="
Properties="user=brsbapp;portNumber=1433;databaseName=brsbdev;serverName=str2-dev-db"
Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
<JDBCTxDataSource JNDIName="jdbc/StarsIIDS" Name="StarsIIDS"
PoolName="STARSII Store Pool" Targets="MyCluster"/>
<JDBCTxDataSource JNDIName="jdbc/TXStarsIIDS" Name="TXStarsIIDS"
PoolName="STARSII Store Pool" Targets="MyCluster"/>
<!--StartupClass
ClassName="gov.fns.starsii.common.common.PropertiesFileLoader"
DeploymentOrder="250" Name="STARS II Properties Startup Class" Targets="myserver,MyCluster"/>
<StartupClass
ClassName="gov.fns.starsii.common.common.ReferenceValuesHelper"
DeploymentOrder="500"
Name="STARS II Reference Values Startup Class" Targets="myserver,MyCluster"/>
<StartupClass
ClassName="gov.fns.starsii.common.common.ReportCriteriaHelper"
DeploymentOrder="750"
Name="STARS II Reports Criteria Startup Class" Targets="myserver,MyCluster"/
-->
<MailSession JNDIName="mail/STARSIIMailSession"
Name="STARSIIMailSession" Properties="mail.host=str2-dev-prj" Targets="myserver"/>
<JDBCConnectionPool
DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
Name="STARSII Store Pool"
Password="{3DES}nKggeFT8wZkm0R9H8mXaEQ=="
Properties="user=storeapp;portNumber=1433;databaseName=storedev;serverName=str2-dev-db"
Targets="MyCluster"
TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
<JDBCConnectionPool
DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
Name="AffTest" Password=""
Properties="user=sa;portNumber=1433;databaseName=affTest;serverName=AFRANK\AFRANK"
Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://AFRANK\AFRANK:1433"/>
<JDBCTxDataSource JNDIName="jdbc/AffTest" Name="AffTest"
PoolName="AffTest" Targets=""/>
<JDBCConnectionPool DriverName="weblogic.jdbcspy.SpyDriver"
Name="Spy STARSII BRSB Pool"
Password="{3DES}9pslRpr051lR9/NEKdanag=="
Properties="user=brsbapp;portNumber=1433;databaseName=brsbdev;serverName=str2-dev-db"
Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:spy:{jdbc:bea:sqlserver://str2-dev-db:1433};log=(file)C:\cvsrepo\sql.log"/>
<JDBCConnectionPool
DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
Name="STARSII Store Pool 2"
Password="{3DES}nKggeFT8wZkm0R9H8mXaEQ=="
Properties="user=storeapp;portNumber=1433;databaseName=storedev;serverName=str2-dev-db"
Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
<JDBCTxDataSource JNDIName="jdbc/StarsIIDS2" Name="StarsIIDS2"
PoolName="STARSII Store Pool" Targets=""/>
<JDBCConnectionPool
DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
Name="STARSII Stars Pool"
Password="{3DES}tjstL+8fUvdPQzqhNcCYGA=="
Properties="user=starsapp;portNumber=1433;databaseName=stars;serverName=str2-dev-db"
Targets="MyCluster"
TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
<Machine Name="MachineA">
<NodeManager DebugEnabled="true" ListenPort="5555" Name="MachineA"/>
</Machine>
<Server Cluster="MyCluster" ExpectedToRun="false"
ExtraEjbcOptions="-J-mx521m" JDBCLoggingEnabled="true"
ListenAddress="10.0.0.14" ListenPort="7002" Machine="MachineA"
Name="Server1" ServerVersion="8.1.2.0" StdoutDebugEnabled="true" StdoutSeverityLevel="64">
<ServerDebug Name="Server1"/>
<SSL IdentityAndTrustLocations="KeyStores" Name="Server1"/>
<KernelDebug Name="Server1"/>
<Log Name="Server1"/>
<ServerStart Name="Server1"
OutputFile="C:\bea\user_projects\domains\mydomain\.\NodeManagerClientLogs\mydomain_Server1\startServer_05_05_2004-12_50_56-4.log"
Password="{3DES}js4NnTcuqRE15gEGfNTu4Q==" Username="system"/>
<WebServer Name="Server1"/>
<COM Name="Server1"/>
<IIOP Name="Server1"/>
<JTAMigratableTarget Name="Server1" UserPreferredServer="Server1"/>
<JTARecoveryService Name="Server1"/>
</Server>
<Cluster ClusterAddress="10.0.0.14, 10.0.2.15"
MulticastAddress="226.0.0.244" Name="MyCluster"/>
<Server Cluster="MyCluster" ExpectedToRun="false"
ExtraEjbcOptions="-J-mx521m" ListenAddress="10.0.2.15"
ListenPort="7002" Machine="MachineB" Name="Server2"
ServerVersion="8.1.2.0" StdoutDebugEnabled="true" StdoutSeverityLevel="64">
<ServerDebug Name="Server2"/>
<SSL IdentityAndTrustLocations="KeyStores" Name="Server2"/>
<KernelDebug Name="Server2"/>
<Log Name="Server2"/>
<ServerStart Name="Server2"
Password="{3DES}js4NnTcuqRE15gEGfNTu4Q==" Username="system"/>
<WebServer Name="Server2"/>
<COM Name="Server2"/>
<IIOP Name="Server2"/>
<JTAMigratableTarget Name="Server2" UserPreferredServer="Server2"/>
<JTARecoveryService Name="Server2"/>
</Server>
<MigratableTarget Cluster="MyCluster" Name="Server1 (migratable)"
Notes="This is a system generated default migratable target for a server.
Do not delete manually." UserPreferredServer="Server1"/>
<MigratableTarget Cluster="MyCluster" Name="Server2 (migratable)"
Notes="This is a system generated default migratable target for a server.
Do not delete manually." UserPreferredServer="Server2"/>
<Application Deployed="true" Name="STARSII"
Path="C:\cvsrepo\STARSII\STARSII" StagingMode="nostage" TwoPhase="true">
<EJBComponent Name="../brsbMessage" Targets="MyCluster" URI="../brsbMessage"/>
<EJBComponent Name="../brsbSession" Targets="MyCluster" URI="../brsbSession"/>
<EJBComponent Name="../commonSession" Targets="MyCluster" URI="../commonSession"/>
<EJBComponent Name="../complianceMessage" Targets="MyCluster" URI="../complianceMessage"/>
<EJBComponent Name="../complianceSession" Targets="MyCluster" URI="../complianceSession"/>
<EJBComponent Name="../starsiiEntity" Targets="MyCluster" URI="../starsiiEntity"/>
<EJBComponent Name="../storeSession" Targets="MyCluster" URI="../storeSession"/>
<WebAppComponent Name="/brsb" Targets="MyCluster" URI="../brsbWebApp"/>
<WebAppComponent Name="/compliance" Targets="MyCluster" URI="../complianceWebApp"/>
<WebAppComponent Name="/common" Targets="MyCluster" URI="../mainWebApp"/>
<WebAppComponent Name="/store" Targets="MyCluster" URI="../storeWebApp"/>
</Application>
<Application Name="AffWebApp" Path="C:\cvsrepo\STARSII"
StagingMode="nostage" TwoPhase="true">
<WebAppComponent Name="AffWebApp" Targets="" URI="AffWebApp"/>
</Application>
<Application Name="activeportal"
Path="C:\bea\user_projects\domains\mydomain\myserver\upload"
StagingMode="nostage" TwoPhase="true">
<WebAppComponent Name="activeportal" Targets="" URI="activeportal.war"/>
</Application>
<JTA Name="mydomain" TimeoutSeconds="300"/>
<JMSServer Name="JobServer" Targets="Server1 (migratable)">
<JMSQueue CreationTime="1072820642598"
JNDIName="jms/STARSIIJobQueue" Name="STARSIIJobQueue"/>
<JMSQueue CreationTime="1072820669345"
JNDIName="jms/STARSIIPostQueue" Name="STARSIIPostQueue"/>
<JMSQueue CreationTime="1088000795852"
JNDIName="jms/STARSIIValidationQueue" Name="STARSIIValidationQueue"/>
<JMSQueue CreationTime="1072820687125"
JNDIName="jms/STARSIIErrorQueue" Name="STARSIIErrorQueue"/>
<JMSQueue CreationTime="1072820687125"
JNDIName="jms/STARSIIEmailQueue" Name="STARSIIEmailQueue"/>
<JMSQueue CreationTime="1072820687225"
JNDIName="jms/STARSIIEBTStateQueue" Name="STARSIIEBTStateQueue"/>
<JMSQueue CreationTime="1072820687325"
JNDIName="jms/STARSIIRFIQueue" Name="STARSIIRFIQueue"/>
<JMSQueue CreationTime="1072820687425"
JNDIName="jms/STARSIIRedeQueue" Name="STARSIIRedeQueue"/>
<JMSQueue CreationTime="1072820687525"
JNDIName="jms/STARSIIWatchListQueue" Name="STARIIWatchListQueue"/>
<JMSQueue CreationTime="1072820687625"
JNDIName="jms/STARSIIDeleteTransFileQueue" Name="STARSIIDeleteTransFileQueue"/>
<JMSQueue CreationTime="1072820687725"
JNDIName="jms/STARSIIUpdateAMRQueue" Name="STARSIIUpdateAMRQueue"/>
<JMSQueue CreationTime="1072820687825"
JNDIName="jms/STARSIIVPPExtractQueue" Name="STARSIIVPPExtractQueue"/>
<JMSQueue CreationTime="1072820687925"
JNDIName="jms/STARSIISIFSUploadQueue" Name="STARSIISIFSUploadQueue"/>
<JMSQueue CreationTime="1072820688025"
JNDIName="jms/STARSIIMARSQueue" Name="STARSIIMARSQueue"/>
<JMSQueue CreationTime="1072820688125"
JNDIName="jms/STARSIIFRBRichmondExtractQueue" Name="STARSIIFRBRichmondExtractQueue"/>
<JMSQueue CreationTime="1072820688225"
JNDIName="jms/STARSIICOTSExtractQueue" Name="STARSIICOTSExtractQueue"/>
<JMSQueue CreationTime="1072820688325"
JNDIName="jms/STARSIIVPPUploadQueue" Name="STARSIIVPPUploadQueue"/>
</JMSServer>
<Machine Name="MachineB">
<NodeManager DebugEnabled="true" Name="MachineB"/>
</Machine>
</Domain>
Internally, many BEA developers and testers use various versions
of XP with clustering on a daily basis. I don't know what
is unique about your machine. I suggest raising the issue
with customer support and/or posting to the clustering newsgroup...
Andy Frank wrote:
> It would seems that my OS and the MultiCast config are to blame. The MultiCast
> test utility worked fine the Win2K machines I tried. Think I will take another
> look at MS KB article 827536 and/or think about another dev OS.
>
> "Andy Frank" <[email protected]> wrote:
>
>>Tom,
>>Thanks for this info.
>>
>>My servers don't look like they are running in different subnets (had
>>a friend
>>look this over and he concurs).
>>
>>My network admin says he hasn't blocked multicast traffic.
>>
>>I think the MultiCast test utility is telling me that I have some kind
>>of multicast
>>config problem. Output follows:
>>
>>------ Begin MultiCast test utility output: ------
>>C:\bea\weblogic81\server\bin>java utils.MulticastTest -N server200 -A
>>237.155.15
>>5.1 -t 15
>>***** WARNING ***** WARNING ***** WARNING *****
>>Do NOT use the same multicast address as a running WLS cluster.
>>
>>
>>Starting test. Hit any key to abort
>>
>>
>>Using multicast address 237.155.155.1:7001
>>Will send messages under the name server200 every 2 seconds
>>Will print warning every 15 seconds if no messages are received
>>
>> I (server200) sent message num 1
>> I (server200) sent message num 2
>> I (server200) sent message num 3
>> I (server200) sent message num 4
>> I (server200) sent message num 5
>> I (server200) sent message num 6
>> I (server200) sent message num 7
>>java.net.SocketTimeoutException: Receive timed out
>> at java.net.PlainDatagramSocketImpl.receive(Native Method)
>> at java.net.DatagramSocket.receive(DatagramSocket.java:680)
>> at utils.MulticastTest$Receiver.run(MulticastTest.java:304)
>> I (server200) sent message num 8
>> I (server200) sent message num 9
>> I (server200) sent message num 10
>> I (server200) sent message num 11
>> I (server200) sent message num 12
>>------ End MultiCast test utility output: ------
>>
>>No "Received message X from server200" messages. I think I need to look
>>into
>>configuring multicast communications on my OK (Windows XP Pro, ver 2002
>>SP1).
>>I did see MS KB article 827536 about "An IP multicast may not be sent
>>correctly
>
>>from Windows XP or from Windows Server 2003" (I do have 2 network adapters),
>
>>but
>>the resolution scared me some.
>>
>>Think I will try some things out on another OS and see what that gets
>>me.
>>
>>Any other thoughts on this will be appreciated.
>>
>>
>>Tom Barnes wrote:
>>
>>>I too suspect something is going wrong with clustering, I wonder
>>>if the servers are running in different subnets (even though
>>>they are on the same box) and/or your network admin has
>>>blocked multicast traffic.
>>>
>>>The MultiCast test utility should help narrow things down:
>>>
>>>http://e-docs.bea.com/wls/docs81/admin_ref/utils.html#1199798
>>>
>>>Tom
>>>
>>>Andy Frank wrote:
>>>
>>>
>>>>Am having some trouble configuring a JMS Server and Queues in a clustered
>>>
>>>development
>>>
>>>>environment. It is a simple cluster of 2 servers (Server1 and Server2)
>>>
>>>both on
>>>
>>>>a single machine.
>>>>
>>>>The "JobServer" JMS Server is targeted to "Server1 (migratable)".
>>
>>>All the JNDI
>>>
>>>>names for the Queues appear in the JNDI tree of Server1, but not in
>>>
>>>Server2.
>>>
>>>>When the sending of a message is attempted on Server2, the following
>>>
>>>occurs:
>>>
>>>>javax.naming.NameNotFoundException: While trying to lookup 'jms.STARSIIPostQueue'
>>>>didn't find subcontext 'jms' Resolved ; remaining name 'jms/STARSIIPostQueue'
>>>> at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:858)
>>>>
>>>>This may be a problem with the cluster configuration, but I haven't
>>>
>>>been able
>>>
>>>>to see anything wrong with it.
>>>>
>>>>Any and all help will be appreciated.
>>>>
>>>>There is the Config.xml file:
>>>><?xml version="1.0" encoding="UTF-8"?>
>>>><Domain ConfigurationVersion="8.1.2.0" Name="mydomain">
>>>> <Server ExtraEjbcOptions="-J-mx512m" ListenAddress=""
>>>> ListenPort="7001" Name="myserver" NativeIOEnabled="true"
>>>> ServerVersion="8.1.2.0" StdoutDebugEnabled="true" StdoutSeverityLevel="64">
>>>> <SSL Enabled="false" HostnameVerificationIgnored="false"
>>>> IdentityAndTrustLocations="KeyStores" ListenPort="7002"
>>>
>>>Name="myserver"/>
>>>
>>>> <Log Name="myserver" NumberOfFilesLimited="true"/>
>>>> </Server>
>>>> <Security Name="mydomain"
>>>> PasswordPolicy="wl_default_password_policy"
>>>> Realm="wl_default_realm" RealmSetup="true">
>>>> <weblogic.security.providers.authentication.DefaultAuthenticator
>>>> Name="Security:Name=myrealmDefaultAuthenticator" Realm="Security:Name=myrealm"/>
>>>>
>>>> <weblogic.security.providers.authentication.DefaultIdentityAsserter
>>>> ActiveTypes="AuthenticatedUser"
>>>> Name="Security:Name=myrealmDefaultIdentityAsserter" Realm="Security:Name=myrealm"/>
>>>> <weblogic.security.providers.authorization.DefaultRoleMapper
>>>> Name="Security:Name=myrealmDefaultRoleMapper" Realm="Security:Name=myrealm"/>
>>>> <weblogic.security.providers.authorization.DefaultAuthorizer
>>>> Name="Security:Name=myrealmDefaultAuthorizer" Realm="Security:Name=myrealm"/>
>>>> <weblogic.security.providers.authorization.DefaultAdjudicator
>>>> Name="Security:Name=myrealmDefaultAdjudicator"
>>>> Realm="Security:Name=myrealm" RequireUnanimousPermit="false"/>
>>>> <weblogic.security.providers.credentials.DefaultCredentialMapper
>>>> Name="Security:Name=myrealmDefaultCredentialMapper" Realm="Security:Name=myrealm"/>
>>>> <weblogic.management.security.authentication.UserLockoutManager
>>>> Name="Security:Name=myrealmUserLockoutManager" Realm="Security:Name=myrealm"/>
>>>> <weblogic.management.security.Realm
>>>> Adjudicator="Security:Name=myrealmDefaultAdjudicator"
>>>> Auditors="Security:Name=myrealmSTARSIIAuditor"
>>>> AuthenticationProviders="Security:Name=myrealmSTARSIIAuthenticator|Security:Name=myrealmDefaultAuthenticator|Security:Name=myrealmDefaultIdentityAsserter"
>>>> Authorizers="Security:Name=myrealmDefaultAuthorizer|Security:Name=myrealmSTARSIIAuthorizer"
>>>> CredentialMappers="Security:Name=myrealmDefaultCredentialMapper"
>>>> DefaultRealm="true" DisplayName="myrealm"
>>>> FullyDelegateAuthorization="true"
>>>> Name="Security:Name=myrealm"
>>>> RoleMappers="Security:Name=myrealmDefaultRoleMapper" UserLockoutManager="Security:Name=myrealmUserLockoutManager"/>
>>>>
>>>> <gov.fns.starsii.common.security.authentication.STARSIIAuthenticator
>>>> ControlFlag="SUFFICIENT"
>>>> Name="Security:Name=myrealmSTARSIIAuthenticator" Realm="Security:Name=myrealm"/>
>>>> <gov.fns.starsii.common.security.authorization.STARSIIAuthorizer
>>>> ExemptUri="/common/,/images/,/warning.do,/login.do"
>>>> Name="Security:Name=myrealmSTARSIIAuthorizer"
>>>> PolicyDeploymentEnabled="false"
>>>> Realm="Security:Name=myrealm" Verbose="false" denyPermNotFound="true"/>
>>>> <gov.fns.starsii.common.security.audit.STARSIIAuditor
>>>> Name="Security:Name=myrealmSTARSIIAuditor" Realm="Security:Name=myrealm"/>
>>>> </Security>
>>>> <EmbeddedLDAP
>>>> Credential="{3DES}aD+gV9rRggnoShH/kWurILaHTBP/z0jVoZHtp/hU1xI="
>>>
>>>Name="mydomain"/>
>>>
>>>> <SecurityConfiguration
>>>> Credential="{3DES}mhxP4PeuUHmoX6Aggpj5SNB+AX16Gaol8dOfUzXu7xM8CFNASyNdYIOoqtlqPAZvfZgB14KBtY8MkdKGu/iWFq1xQ07walY8"
>>>> Name="mydomain" RealmBootStrapVersion="1"/>
>>>> <Realm FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
>>>> <FileRealm Name="wl_default_file_realm"/>
>>>> <PasswordPolicy Name="wl_default_password_policy"/>
>>>> <JDBCConnectionPool
>>>> DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
>>>> Name="STARSII BRSB Pool"
>>>> Password="{3DES}9pslRpr051lR9/NEKdanag=="
>>>> Properties="user=brsbapp;portNumber=1433;databaseName=brsbdev;serverName=str2-dev-db"
>>>> Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects"
>>>
>>>URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
>>>
>>>> <JDBCTxDataSource JNDIName="jdbc/StarsIIDS" Name="StarsIIDS"
>>>> PoolName="STARSII Store Pool" Targets="MyCluster"/>
>>>> <JDBCTxDataSource JNDIName="jdbc/TXStarsIIDS" Name="TXStarsIIDS"
>>>> PoolName="STARSII Store Pool" Targets="MyCluster"/>
>>>> <!--StartupClass
>>>> ClassName="gov.fns.starsii.common.common.PropertiesFileLoader"
>>>> DeploymentOrder="250" Name="STARS II Properties Startup Class"
>>>
>>>Targets="myserver,MyCluster"/>
>>>
>>>> <StartupClass
>>>> ClassName="gov.fns.starsii.common.common.ReferenceValuesHelper"
>>>> DeploymentOrder="500"
>>>> Name="STARS II Reference Values Startup Class" Targets="myserver,MyCluster"/>
>>>> <StartupClass
>>>> ClassName="gov.fns.starsii.common.common.ReportCriteriaHelper"
>>>> DeploymentOrder="750"
>>>> Name="STARS II Reports Criteria Startup Class" Targets="myserver,MyCluster"/
>>>>-->
>>>> <MailSession JNDIName="mail/STARSIIMailSession"
>>>> Name="STARSIIMailSession" Properties="mail.host=str2-dev-prj"
>>>
>>>Targets="myserver"/>
>>>
>>>> <JDBCConnectionPool
>>>> DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
>>>> Name="STARSII Store Pool"
>>>> Password="{3DES}nKggeFT8wZkm0R9H8mXaEQ=="
>>>> Properties="user=storeapp;portNumber=1433;databaseName=storedev;serverName=str2-dev-db"
>>>> Targets="MyCluster"
>>>> TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
>>>> <JDBCConnectionPool
>>>> DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
>>>> Name="AffTest" Password=""
>>>> Properties="user=sa;portNumber=1433;databaseName=affTest;serverName=AFRANK\AFRANK"
>>>> Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects"
>>>
>>>URL="jdbc:bea:sqlserver://AFRANK\AFRANK:1433"/>
>>>
>>>> <JDBCTxDataSource JNDIName="jdbc/AffTest" Name="AffTest"
>>>> PoolName="AffTest" Targets=""/>
>>>> <JDBCConnectionPool DriverName="weblogic.jdbcspy.SpyDriver"
>>>> Name="Spy STARSII BRSB Pool"
>>>> Password="{3DES}9pslRpr051lR9/NEKdanag=="
>>>> Properties="user=brsbapp;portNumber=1433;databaseName=brsbdev;serverName=str2-dev-db"
>>>> Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects"
>>>
>>>URL="jdbc:spy:{jdbc:bea:sqlserver://str2-dev-db:1433};log=(file)C:\cvsrepo\sql.log"/>
>>>
>>>> <JDBCConnectionPool
>>>> DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
>>>> Name="STARSII Store Pool 2"
>>>> Password="{3DES}nKggeFT8wZkm0R9H8mXaEQ=="
>>>> Properties="user=storeapp;portNumber=1433;databaseName=storedev;serverName=str2-dev-db"
>>>> Targets="" TestTableName="SQL SELECT COUNT(*) FROM sysobjects"
>>>
>>>URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
>>>
>>>> <JDBCTxDataSource JNDIName="jdbc/StarsIIDS2" Name="StarsIIDS2"
>>>> PoolName="STARSII Store Pool" Targets=""/>
>>>> <JDBCConnectionPool
>>>> DriverName="weblogic.jdbc.sqlserver.SQLServerDriver"
>>>> Name="STARSII Stars Pool"
>>>> Password="{3DES}tjstL+8fUvdPQzqhNcCYGA=="
>>>> Properties="user=starsapp;portNumber=1433;databaseName=stars;serverName=str2-dev-db"
>>>> Targets="MyCluster"
>>>> TestTableName="SQL SELECT COUNT(*) FROM sysobjects" URL="jdbc:bea:sqlserver://str2-dev-db:1433"/>
>>>> <Machine Name="MachineA">
>>>> <NodeManager DebugEnabled="true" ListenPort="5555" Name="MachineA"/>
>>>> </Machine>
>>>> <Server Cluster="MyCluster" ExpectedToRun="false"
>>>> ExtraEjbcOptions="-J-mx521m" JDBCLoggingEnabled="true"
>>>> ListenAddress="10.0.0.14" ListenPort="7002" Machine="MachineA"
>>>> Name="Server1" ServerVersion="8.1.2.0" StdoutDebugEnabled="true"
>>>
>>>StdoutSeverityLevel="64">
>>>
>>>> <ServerDebug Name="Server1"/>
>>>> <SSL IdentityAndTrustLocations="KeyStores" Name="Server1"/>
>>>> <KernelDebug Name="Server1"/>
>>>> <Log Name="Server1"/>
>>>> <ServerStart Name="Server1"
>>>> OutputFile="C:\bea\user_projects\domains\mydomain\.\NodeManagerClientLogs\mydomain_Server1\startServer_05_05_2004-12_50_56-4.log"
>>>> Password="{3DES}js4NnTcuqRE15gEGfNTu4Q==" Username="system"/>
>>>> <WebServer Name="Server1"/>
>>>> <COM Name="Server1"/>
>>>> <IIOP Name="Server1"/>
>>>> <JTAMigratableTarget Name="Server1" UserPreferredServer="Server1"/>
>>>> <JTARecoveryService Name="Server1"/>
>>>> </Server>
>>>> <Cluster ClusterAddress="10.0.0.14, 10.0.2.15"
>>>> MulticastAddress="226.0.0.244" Name="MyCluster"/>
>>>> <Server Cluster="MyCluster" ExpectedToRun="false"
>>>> ExtraEjbcOptions="-J-mx521m" ListenAddress="10.0.2.15"
>>>> ListenPort="7002" Machine="MachineB" Name="Server2"
>>>> ServerVersion="8.1.2.0" StdoutDebugEnabled="true" StdoutSeverityLevel="64">
>>>> <ServerDebug Name="Server2"/>
>>>> <SSL IdentityAndTrustLocations="KeyStores" Name="Server2"/>
>>>> <KernelDebug Name="Server2"/>
>>>> <Log Name="Server2"/>
>>>> <ServerStart Name="Server2"
>>>> Password="{3DES}js4NnTcuqRE15gEGfNTu4Q==" Username="system"/>
>>>> <WebServer Name="Server2"/>
>>>> <COM Name="Server2"/>
>>>> <IIOP Name="Server2"/>
>>>> <JTAMigratableTarget Name="Server2" UserPreferredServer="Server2"/>
>>>> <JTARecoveryService Name="Server2"/>
>>>> </Server>
>>>> <MigratableTarget Cluster="MyCluster" Name="Server1 (migratable)"
>>>> Notes="This is a system generated default migratable target
>>>
>>>for a server.
>>>
>>>>Do not delete manually." UserPreferredServer="Server1"/>
>>>> <MigratableTarget Cluster="MyCluster" Name="Server2 (migratable)"
>>>> Notes="This is a system generated default migratable target
>>>
>>>for a server.
>>>
>>>>Do not delete manually." UserPreferredServer="Server2"/>
>>>> <Application Deployed="true" Name="STARSII"
>>>> Path="C:\cvsrepo\STARSII\STARSII" StagingMode="nostage" TwoPhase="true">
>>>> <EJBComponent Name="../brsbMessage" Targets="MyCluster" URI="../brsbMessage"/>
>>>> <EJBComponent Name="../brsbSession" Targets="MyCluster" URI="../brsbSession"/>
>>>> <EJBComponent Name="../commonSession" Targets="MyCluster"
>>
>>URI="../commonSession"/>
>>
>>>> <EJBComponent Name="../complianceMessage" Targets="MyCluster"
>>>
>>>URI="../complianceMessage"/>
>>>
>>>> <EJBComponent Name="../complianceSession" Targets="MyCluster"
>>>
>>>URI="../complianceSession"/>
>>>
>>>> <EJBComponent Name="../starsiiEntity" Targets="MyCluster"
>>
>>URI="../starsiiEntity"/>
>>
>>>> <EJBComponent Name="../storeSession" Targets="MyCluster" URI="../storeSession"/>
>>>> <WebAppComponent Name="/brsb" Targets="MyCluster" URI="../brsbWebApp"/>
>>>> <WebAppComponent Name="/compliance" Targets="MyCluster" URI="../complianceWebApp"/>
>>>> <WebAppComponent Name="/common" Targets="MyCluster" URI="../mainWebApp"/>
>>>> <WebAppComponent Name="/store" Targets="MyCluster" URI="../storeWebApp"/>
>>>> </Application>
>>>> <Application Name="AffWebApp" Path="C:\cvsrepo\STARSII"
>>>> StagingMode="nostage" TwoPhase="true">
>>>> <WebAppComponent Name="AffWebApp" Targets="" URI="AffWebApp"/>
>>>> </Application>
>>>> <Application Name="activeportal"
>>>> Path="C:\bea\user_projects\domains\mydomain\myserver\upload"
>>>> StagingMode="nostage" TwoPhase="true">
>>>> <WebAppComponent Name="activeportal" Targets="" URI="activeportal.war"/>
>>>> </Application>
>>>> <JTA Name="mydomain" TimeoutSeconds="300"/>
>>>> <JMSServer Name="JobServer" Targets="Server1 (migratable)">
>>>> <JMSQueue CreationTime="1072820642598"
>>>> JNDIName="jms/STARSIIJobQueue" Name="STARSIIJobQueue"/>
>>>> <JMSQueue CreationTime="1072820669345"
>>>> JNDIName="jms/STARSIIPostQueue" Name="STARSIIPostQueue"/>
>>>> <JMSQueue CreationTime="1088000795852"
>>>> JNDIName="jms/STARSIIValidationQueue" Name="STARSIIValidationQueue"/>
>>>> <JMSQueue CreationTime="1072820687125"
>>>> JNDIName="jms/STARSIIErrorQueue" Name="STARSIIErrorQueue"/>
>>>> <JMSQueue CreationTime="1072820687125"
>>>> JNDIName="jms/STARSIIEmailQueue" Name="STARSIIEmailQueue"/>
>>>> <JMSQueue CreationTime="1072820687225"
>>>> JNDIName="jms/STARSIIEBTStateQueue" Name="STARSIIEBTStateQueue"/>
>>>> <JMSQueue CreationTime="1072820687325"
>>>> JNDIName="jms/STARSIIRFIQueue" Name="STARSIIRFIQueue"/>
>>>> <JMSQueue CreationTime="1072820687425"
>>>> JNDIName="jms/STARSIIRedeQueue" Name="STARSIIRedeQueue"/>
>>>> <JMSQueue CreationTime="1072820687525"
>>>> JNDIName="jms/STARSIIWatchListQueue" Name="STARIIWatchListQueue"/>
>>>> <JMSQueue CreationTime="1072820687625"
>>>> JNDIName="jms/STARSIIDeleteTransFileQueue" Name="STARSIIDeleteTransFileQueue"/>
>>>> <JMSQueue CreationTime="1072820687725"
>>>> JNDIName="jms/STARSIIUpdateAMRQueue" Name="STARSIIUpdateAMRQueue"/>
>>>> <JMSQueue CreationTime="1072820687825"
>>>> JNDIName="jms/STARSIIVPPExtractQueue" Name="STARSIIVPPExtractQueue"/>
>>>> <JMSQueue CreationTime="1072820687925"
>>>> JNDIName="jms/STARSIISIFSUploadQueue" Name="STARSIISIFSUploadQueue"/>
>>>> <JMSQueue CreationTime="1072820688025"
>>>> JNDIName="jms/STARSIIMARSQueue" Name="STARSIIMARSQueue"/>
>>>> <JMSQueue CreationTime="1072820688125"
>>>> JNDIName="jms/STARSIIFRBRichmondExtractQueue" Name="STARSIIFRBRichmondExtractQueue"/>
>>>> <JMSQueue CreationTime="1072820688225"
>>>> JNDIName="jms/STARSIICOTSExtractQueue" Name="STARSIICOTSExtractQueue"/>
>>>> <JMSQueue CreationTime="1072820688325"
>>>> JNDIName="jms/STARSIIVPPUploadQueue" Name="STARSIIVPPUploadQueue"/>
>>>> </JMSServer>
>>>> <Machine Name="MachineB">
>>>> <NodeManager DebugEnabled="true" Name="MachineB"/>
>>>> </Machine>
>>>></Domain>
>>>
>
-
Migration of JMS Queues from Weblogic 10.3 to 12c
Hi - We are currently planning to move our JMS Queues from existing 10.3 server to 12c and for the same we are looking for some feedback :
We need to define a rollback strategy in case our migration to 12c does not work well and we need to revert back to using weblogic 10.3. Are messages sent to weblogic 12c backward compatible with version 10.3? As part of rollback, business would want to drain out any remaining messages from 12c and feed them back to 10.3 queues to allow them for processing. Is this feasible? If yes then, could you please suggest how, If not then could you please suggest a strategy for rollback and process remaining messages in 12c?
We would also want to know if we can keep the same Database for both 10.3 and 12c JMS persistent stores for the same queues or should we define a completely new DB? With weblogic we can define prefixes for the DB stores which would make queue tables to have different names between 10.3 and 12c for same queues. However we are not sure if there are any other internal tables that JMS creates in the persistent stores DB, not using these prefixes, which would then corrupt the data since both 10.3 and 12c tables would be on the same DB.
Thanks
NitinHello,
the final release for WLP is 10.3.6, running on WebLogic Server 10.3.6.
Emmanuel -
NoClassDefFoundError while accessing JMS Queue from JDev 10.1.3.3
Hi,
I'm trying to get a handle of a JMS queue, which resides on Oracle App Server 10.1.3.4, from a Java Program which I'm trying to run from JDeveloper 10.1.3.3.
I'm trying to make an RMI connection to the App server from JDeveloper by passing following information to the intialContext:
env.put("java.naming.factory.initial",
"oracle.j2ee.rmi.RMIInitialContextFactory");
env.put(Context.PROVIDER_URL,
"ormi://wafedabpelqa10.corp.weyer.pri:12402");
env.put("java.naming.security.principal","oc4jadmin");
env.put("java.naming.security.credentials","welcome1");
Where the above information is related to our App Server.
I'm successfully able to establish an RMI connection from JDev to Oracle App Server and can lookup datasources created on the App server using their
JNDI names. However if I try to look up a JMS Queue from the App server using its JNDI name, I get an error as:
java.lang.NoClassDefFoundError: oracle/tip/adapter/api/OracleConnectionFactory
I have also tried to use the value "com.evermind.server.rmi.RMIInitialContextFactory" for "java.naming.factory.initial",
however I still get the same error.Hi,
this should work and you need to download the rmi library http://www.oracle.com/technology/software/products/ias/htdocs/utilsoft.html
thanks
# String queueName = "jms/MyJMSQueue";
# String queueConnectionFactoryName = "jms/MyJMSQCF";
# Context ctx;
# try {
# Properties parm = new Properties();
# parm.setProperty("java.naming.factory.initial","com.evermind.server.rmi.RMIInitialContextFactory");
# parm.setProperty("java.naming.provider.url","ormi://localhost:23791/");
# parm.setProperty("java.naming.security.principal","oc4jadmin");
# parm.setProperty("java.naming.security.credentials","welcome");
# ctx = new InitialContext(parm);
# QueueConnectionFactory connectionFactory =
# (QueueConnectionFactory)ctx.lookup(queueConnectionFactoryName);
# connection = connectionFactory.createQueueConnection();
# connection.start();
# session = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
# queue = (Queue)ctx.lookup(queueName);
# sender = session.createSender(queue);
# receiver = session.createReceiver(queue);
# } catch (JMSException je) {
# throw new RuntimeException("Fout opgetreden bij het starten ",
# je);
# } catch (Throwable t) {
# throw new RuntimeException("Fout opgetreden bij het starten ",
# t);
# } -
Hi all,
I am trying DB>XI>TIBCO (EMS).
I have included tibjms.jar library in aii_af_jmsproviderlib.sda and deployed using SDM.
In JMS receiver adapter I am using the following:-
Transport protocol: Access JMS Provider with JNDI.
JNDI Lookup Name of Queue connection factory: com.tibco.tibjms.TibjmsQueueConnectionFactory
JNDI Lookup Name of JMS Queue: com.tibco.tibjms.TibjmsQueue
Name of JNDI Initial Context Factory:
com.tibco.tibjms.naming.TibjmsInitialContextFactory
In RWB i am getting the following for this scenario:
2005-04-17 19:55:05 Success Using connection AFW. Trying to put the message into the receive queue.
2005-04-17 19:55:05 Success The message was successfully retrieved from the receive queue.
2005-04-17 19:55:05 Success The message status set to DLNG.
2005-04-17 19:55:05 Success Deliver to channel: TIB_Receiver_JNDI
2005-04-17 19:55:05 <b>Error Exception caught by adapter framework: Object not found in lookup of XIJMSService.</b>
2005-04-17 19:55:05 Success XI message converted to binary format successfully
2005-04-17 19:55:05 <b>Error Delivery of the message to the application using connection AFW failed, due to: Object not found in lookup of XIJMSService..</b>
2005-04-17 19:55:05 Success The asynchronous message was successfully scheduled to be delivered at Sun Apr 17 20:00:05 GMT+05:30 2005.
2005-04-17 19:55:05 Success The message status set to WAIT.
Kindly help what other configurations are required.
Regards,
Arpit SethHi all,
Me too have the same problem.
I am trying to integrate XI with OpenJms (server) using JMS adapter.
But the error that i am getting is similar to yours:
Error Exception caught by adapter framework: Object not found in lookup of XIJMSService.
I am very interested to the solution.
Thanks in advence.
Best regards.
Lemin
Message was edited by: lemine ould-cheikh -
Hi @ll
I try to define a specific jms response queue for a web service client that communicates SOAP/jms, running on a WLS 9.2. The web service itself runs also on a WLS 9.2 where also the request and response queues are located. By default the client receives the responses from a temporary response queue. Is there a way to define a specific response queue e.g. setting the JMSReplyTo property in the request on the client side?
/cheers&greetz
DaniWLS do not have a light SOAP client with callbacks yet. It is
not a planed feature for 7.0, but we will considering this for
post 7.0.
regards,
-manoj
"markhu" <[email protected]> wrote in message
news:[email protected]..
Hi, guys:
I have a system : client written in Java/Swing, HTTPS authentication,
and then subscribes to a WLS 61. SP2 based JMS Topic and also has the
ability to send message to a Queue, since I can not bring down the size of
the client side WLS JMS dependency lib, I am thinking about using SOAP /
web service as the communication tier between my client and server, so the
question is: since the client need get the price updates in a real time
mode, I need build a server side based PUSH for all the new price updates
which come into the JMS Topic, and broadcast as SOAP messages to client,is
this mean that I have to build the Call - Back for the Java Swing Client,so
it can automatically get the new price updates as it's getting from JMS
Topic now ? Any Idea on how to build server side PUSH based SOAP message
center as web service ?? Thanks a lot.
regards,
mark
FYI:
I need the same PUSH service for my .NET based client as well.
Maybe you are looking for
-
Apple lists a DVI to Video adapter for a MPB if you have an ATI X1900. Is there an adapter out there if you have a ATI X1600.
-
Apple Weather app temps way wrong
In Melbourne the apple weather app is often quite a few degrees off. The Yahoo! link takes me to weather.com which shows quite a discrepancy with Yahoo!'s own weather reading. Yahoo! is in line with the local Bureau of Meteorology. Today the temp is
-
Parse method of JAXP DocumentBuilder using InputStream
I am having some problem. I am working on a generic XML messaging client server pair. The crux of it is that I am using the Transformer object to send data from the client to the server, using a Socket InputStream. The I do exactly the same from the
-
Allow user to change image of a document set
Hello all, is it possible to allow user to upload and set an image in the welcome page of a document set ? For example, I want to create a document set for each customer, to store document related to this customer. In the document set welcome page, I
-
I'm trying to use Firefox 10.0.5 on my Galaxy Tab 2 7.0 which is running Ice Cream Sandwich. My problem is I can't get to any of the menu functions, escpecially the 'save as pdf' because there is no menu key. I can't get the tablet version because it