| Author | 
		  Message
		 | 
		
		  | chintu | 
		  
		    
			  
				 Posted: Thu Jan 20, 2005 1:26 pm    Post subject: [SOLVED] Configuring UPES framework on a client machine. | 
				     | 
			   
			 
		   | 
		
		
		    Acolyte
 
 Joined: 27 Dec 2004 Posts: 64
  
  | 
		  
		    
			  
				Hello all,
 
Here is our current dev environment setup
 
 
Machine A hosts:
 
WF server(3.5 SP3)
 
MQ server
 
 
Machine B hosts:
 
WF client,
 
WebClient(on WAS).
 
MQ Client.
 
 
 
We are able to run the samples that came with the UPES framework on machine A.However, from machine B, how do we communicate with the UPES Q which is hosted on Machine A?The mqwfupes.properties does not have a parameter to specify hostname/port (to connect using a server connection channel)?
 
We would eventually have everything(other that webclient) on Machine A, but for development purposes we would like to access the UPES framework from machine B.
 
 
Thanks
  Last edited by chintu on Mon Jan 31, 2005 7:48 am; edited 1 time in total | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | vennela | 
		  
		    
			  
				 Posted: Thu Jan 20, 2005 1:35 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Jedi Knight
 
 Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India 
  | 
		  
		    
			  
				However, from machine B, how do we communicate with the UPES Q which is hosted on Machine A?
 
The easiest thing to do is
 
Create the UPES queue on machine B
 
Cluster the UPES queue
 
Remove the name of the QMGR in the UPES definition in the buildtime. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | Ratan | 
		  
		    
			  
				 Posted: Thu Jan 20, 2005 1:51 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Grand Master
 
 Joined: 18 Jul 2002 Posts: 1245
  
  | 
		  
		    
			  
				Vennela, Look at this
 
 
   
	| Quote: | 
   
  
	Machine B hosts: 
 
WF client, 
 
WebClient(on WAS). 
 
MQ Client. 
 
 | 
   
 
 
 
If the framework does not support connecting to the remote QM, I dont think you can do anything but to have the framework on a machine which has QM. _________________ -Ratan | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | vennela | 
		  
		    
			  
				 Posted: Thu Jan 20, 2005 2:48 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Jedi Knight
 
 Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India 
  | 
		  
		    
			  
				OK
 
I missed that part. 
 
Try it with the same properties and see if it works.
 
If the framework points itself to the client channel table that web client is using then you will be able to run it automatically. 
 
 
The other thing I can think of is:
 
 
   
	| Code: | 
   
  
	
 
Mqwf.Configuration            = FMC
 
Mqwf.UserId                   = ADMIN
 
Mqwf.Password                 = password
 
Mqwf.Inbound.MQ.Queue         = EXEXMLINPUTQ
 
Mqwf.Inbound.MQ.Queue.Manager = FMCQM
 
 
# Upes Settings
 
# -------------
 
 
Upes.Message.Pipe.Class        = com.ibm.workflow.util.msg.MQPipe
 
Upes.ThreadPool.Size           = 1
 
Upes.System                    = FMCSYS
 
Upes.System.Group              = FMCGRP
 
Upes.Outbound.MQ.Queue         = MYUPES
 
Upes.Outbound.MQ.Queue.Manager = FMCQM
 
Upes.Version                   = 3.4
 
 
# Upes Container Settings
 
# -----------------------
 
 
Upes.Class   = com.acme.sample.SimpleUpes
 
Upes.Enabled = true | 
   
 
 
 
Change them to JMSPipe like below
 
 
   
	| Code: | 
   
  
	
 
Mqwf.Configuration            = FMC
 
Mqwf.UserId                   = ADMIN
 
Mqwf.Password                 = password
 
Mqwf.Inbound.MQ.Queue         = queue://EXEXMLINPUTQ
 
Mqwf.Inbound.MQ.Queue.Manager = qcf://FMCQM?PORT=1414&HOSTNAME=hostname&CHANNEL=svrconn
 
 
# Upes Settings
 
# -------------
 
 
Upes.Message.Pipe.Class        = com.ibm.workflow.util.msg.JmsPipe
 
Upes.ThreadPool.Size           = 1
 
Upes.System                    = FMCSYS
 
Upes.System.Group              = FMCGRP
 
Upes.Outbound.MQ.Queue         = queue://MYUPES
 
Upes.Outbound.MQ.Queue.Manager = qcf://FMCQM?PORT=1414&HOSTNAME=hostname&CHANNEL=svrconn
 
Upes.Version                   = 3.4
 
 
# Upes Container Settings
 
# -----------------------
 
 
Upes.Class   = com.acme.sample.SimpleUpes
 
Upes.Enabled = true
 
 | 
   
 
 
 
See if it works | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | hos | 
		  
		    
			  
				 Posted: Fri Jan 21, 2005 1:13 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Chevalier
 
 Joined: 03 Feb 2002 Posts: 470
  
  | 
		  
		    
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | chintu | 
		  
		    
			  
				 Posted: Mon Jan 24, 2005 2:35 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Acolyte
 
 Joined: 27 Dec 2004 Posts: 64
  
  | 
		  
		    
			  
				As venny said in his first post, I have installed MQ server on Machine B.
 
UPESQ(clustered) resides on Machine B, and I am able to put(as well as get) messages on that Q from Machine A thru a UPES activity.
 
 
sample.properties:
 
..
 
...
 
Mqwf.Inbound.MQ.Queue         = FMC.FMCGRP.EXE.XML
 
Mqwf.Inbound.MQ.Queue.Manager = QM1
 
....
 
 
But when I try to run the sample1 program, I get a 2085 error. For testing purposes I have replaced the Inbound Q to a local Q(on macine B) and the sample runs fine. Which leads me to believe that the sample program is trying to do a GET on the remote Q(which has no local definition).
 
 
   
	| Quote: | 
   
  
	| You are attempting to use a cluster queue that is only defined on a remote queue manager. You can put messages to cluster queues that have definitions on remote queue managers, but you must have a local definition to get messages. | 
   
 
 
 
http://www.developer.ibm.com/tech/faq/individual?oid=2:25689.
 
 
Is this the reason for the 2085 error code or am I missing something??? | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | vennela | 
		  
		    
			  
				 Posted: Tue Jan 25, 2005 2:58 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Jedi Knight
 
 Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India 
  | 
		  
		    
			  
				I haven't tried what you did but I think you should open a PMR to see if there is a way to do it. 
 
 
I used JMS and could client connect. So, for now you can use JMS until IBM comes back. But as far as I know, if you use UPES framework, MQ or JMS is transperent to you. Everything, looks like is done under the covers after reading the properties file. 
 
Here are the settings
 
 
   
	| Code: | 
   
  
	
 
# MQWF Settings
 
# -------------
 
 
Mqwf.Configuration            = FMC
 
Mqwf.UserId                   = ADMIN
 
Mqwf.Password                 = password
 
 
# Upes Settings
 
# -------------
 
 
Upes.Message.Pipe.Class        = com.ibm.workflow.util.msg.JmsPipe
 
Upes.ThreadPool.Size           = 1
 
Upes.System                    = FMCSYS
 
Upes.System.Group              = FMCGRP
 
Upes.Outbound.MQ.Queue         = MYUPES
 
Upes.Outbound.MQ.Queue.Manager = FMCQM
 
Upes.Version                   = 3.5
 
 
 
# JMSPipe settings 
 
# -------------
 
 
Jms.Provider.Url          = file:/C:/Temp
 
Jms.Initial.Context.Factory    = com.sun.jndi.fscontext.RefFSContextFactory
 
Jms.Queue.Connection.Factory   = upesQCF
 
Mqwf.Inbound.Jms.Queue         = xmlQ
 
Upes.Outbound.Jms.Queue        = upesQ
 
 
# Upes Container Settings
 
# -----------------------
 
 
Upes.Class   = com.acme.sample.SimpleUpes
 
Upes.Enabled = true
 
 
 | 
   
 
 
 
   
	| Code: | 
   
  
	
 
 
InitCtx> dis qcf(upesQCF)
 
 
    FAILIFQUIESCE(YES)
 
    HOSTNAME(localhost)
 
    PORT(5010)
 
    QMANAGER(FMCQM)
 
    USECONNPOOLING(YES)
 
    CCSID(819)
 
    TEMPMODEL(SYSTEM.DEFAULT.MODEL.QUEUE)
 
    MSGBATCHSZ(10)
 
    TRANSPORT(CLIENT)
 
    SYNCPOINTALLGETS(NO)
 
    TEMPQPREFIX()
 
    MSGRETENTION(YES)
 
    RESCANINT(5000)
 
    POLLINGINT(5000)
 
    LOCALADDRESS()
 
    VERSION(2)
 
    CHANNEL(SYSTEM.DEF.SVRCONN)
 
 
Q(xmlQ)
 
    FAILIFQUIESCE(YES)
 
    QUEUE(EXEXMLINPUTQ)
 
    QMANAGER()
 
    PERSISTENCE(APP)
 
    CCSID(1208)
 
    TARGCLIENT(JMS)
 
    ENCODING(NATIVE)
 
    PRIORITY(APP)
 
    EXPIRY(APP)
 
    VERSION(1)
 
 
Q(upesQ)
 
    FAILIFQUIESCE(YES)
 
    QUEUE(MYUPES)
 
    QMANAGER()
 
    PERSISTENCE(APP)
 
    CCSID(1208)
 
    TARGCLIENT(JMS)
 
    ENCODING(NATIVE)
 
    PRIORITY(APP)
 
    EXPIRY(APP)
 
    VERSION(1)
 
 
 
JMS Settings
 
 
 
 | 
   
 
 
 
I will try your setup tomorrow and hopefully come back to the same conclusion | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | chintu | 
		  
		    
			  
				 Posted: Tue Jan 25, 2005 6:41 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Acolyte
 
 Joined: 27 Dec 2004 Posts: 64
  
  | 
		  
		    
			  
				Vennela,
 
Could you please post the setup in your setJMS.properties file?
 
 
The dis qcf(*) command does not show anything for me. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | chintu | 
		  
		    
			  
				 Posted: Mon Jan 31, 2005 7:48 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Acolyte
 
 Joined: 27 Dec 2004 Posts: 64
  
  | 
		  
		    
			  
				| Solved...we were able to configure using the JMS option. | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | ramires | 
		  
		    
			  
				 Posted: Mon Apr 21, 2008 2:40 pm    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		   Knight
 
 Joined: 24 Jun 2001 Posts: 523 Location: Portugal - Lisboa 
  | 
		  
		    
			  
				Hello, can I use a client connection from a machine running my application inside WAS to a UPES implementation on a WF server in another machine? 
 
 
I'm trying to understand the Programming Guide, and also found this thread but the link hos posted doesn't exist anymore. 
 
Thanks 
 
Joao 
 
 
 | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | jmac | 
		  
		    
			  
				 Posted: Tue Apr 22, 2008 6:50 am    Post subject:  | 
				     | 
			   
			 
		   | 
		
		
		    Jedi Knight
 
 Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC 
  | 
		  
		    
			  
				If I understand correctly, I would say that as long as the Machine running the UPES can see the Request and Reply queues, there would be no issue. _________________ John McDonald
 
RETIRED | 
			   
			 
		   | 
		
		
		  | Back to top | 
		  
		  	
		   | 
		
		
		    | 
		
		
		  | 
		    
		   |