|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Improxy.jar |
« View previous topic :: View next topic » |
Author |
Message
|
parsar |
Posted: Wed Dec 28, 2005 9:34 am Post subject: Improxy.jar |
|
|
Novice
Joined: 08 Dec 2005 Posts: 22
|
Hi
I configured the MQ Workflow java agent using fmczutil and while trying to run the same..i am running into this error...
C:\Program Files\IBM WebSphere MQ Workflow\cfgs\fmc\bin>C:\Progra~1\WebSphere\AppServer\java\bin\java.exe com.ibm.workflow.agent.Main -yFMC
FMC38004I MQSeries Workflow CORBA Agent started.
------------------------------------------------
Name : iiop://ITS-CE00252:900/MQWFAGENT
Locator : JNDI_LOCATOR
Transport : RMI-IIOP
Reaper Cycle : 120 seconds
Reaper Threshold : 1000 objects
Reaper Ratio : 90 %
Exception in thread "main" javax.naming.ConfigurationException: The property com.ibm.ws.naming.wsn.factory.initial is not set. The most likely cause is that the jar which contains the file com/ibm/websphere/naming/jndiprovider.properties cannot be found by the class loader.
at com.ibm.websphere.naming.WsnInitialContextFactory.init_implClassCtor(WsnInitialContextFactory.java:192)
at com.ibm.websphere.naming.WsnInitialContextFactory.getInitialContext(WsnInitialContextFactory.java:110)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:674)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:256)
at javax.naming.InitialContext.init(InitialContext.java:232)
at javax.naming.InitialContext.<init>(InitialContext.java:208)
at com.ibm.workflow.iiop.jni.DomainControllerImpl.<init>(DomainControllerImpl.java:249)
at com.ibm.workflow.agent.Main.main(Main.java:70)
I understand this has got to do with the naming context and lookup problem and I have all the jars cited here
( http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic&f=46&t=004372 ) in the classpath except the Improxy.jar which I couldnt find in any of the following installations:
IBM Websphere Appsever
IBM WSAD
I am unable to locate this Improxy.jar and hence stuckup...
I request some information about the Improxy or any other solutions if anyone of you had faced a similar situation.
This is urgent.
Thank you |
|
Back to top |
|
 |
vennela |
Posted: Wed Dec 28, 2005 10:23 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
What are you trying to do |
|
Back to top |
|
 |
kotha |
Posted: Wed Dec 28, 2005 10:28 am Post subject: |
|
|
Partisan
Joined: 12 Mar 2005 Posts: 333
|
Quote: |
The most likely cause is that the jar which contains the file com/ibm/websphere/naming/jndiprovider.properties cannot be found by the class loader. |
may be the issue is with the classpath. make sure you have all necessary jar files mentioned in the class path[/quote] |
|
Back to top |
|
 |
parsar |
Posted: Wed Dec 28, 2005 11:19 am Post subject: |
|
|
Novice
Joined: 08 Dec 2005 Posts: 22
|
Hi,
Actually I am trying to debug an Activity Implementation code.
This is how it looks like:
************************************************************
public class UICWFActImplMain {
/**
* This method start the Activity Implemation Application.
* @param args String[]
* @return void
*/
public static void main(String[] args) throws UICBusinessException {
UICEvent objEventLog = null;
UICTxnInfo objTxnInfo = null;
Timestamp objTimeStamp = null;
int intActImplSeq = 0; // Activity Sequence number
String strProcInstId = ""; // ProcessInstance Id
int intCurrActSeq = 0;
UICWFContainerUtil objContUtil = null;
Agent objAgent = null;
ExecutionService objService = null;
ReadOnlyContainer objInCntr = null;
ReadWriteContainer objOutCntr = null;
ExecutionAgent objEAgent = null;
IUICActivityImpln objActvtyImpl = null;
UICCollection objCollection = null;
try {
// Set App Real Path from UICWFActImplMain as an argument.
UICUtil.APP_REAL_PATH = args[0];
UICUtil.refresh();
// Set the Provider URL for EJB Lookup...
System.out.println("Default UICEJBRemoteFactory.PROVIDER_URL => "+UICEJBRemoteFactory.PROVIDER_URL);
if (args[1] != null)
UICEJBRemoteFactory.PROVIDER_URL = args[1];
else
System.out.println("Using Default UICEJBRemoteFactory.PROVIDER_URL...");
System.out.println("Changed UICEJBRemoteFactory.PROVIDER_URL => "+UICEJBRemoteFactory.PROVIDER_URL);
System.out.println("1");
//UICErrorHandler.printDebug("UICWFActImplMain:Start");
//Creating TxnInfo
objTxnInfo = new UICTxnInfo();
objTxnInfo.setUserId(UICWFStaticConstants.USER);
objTxnInfo.setHandleId(UICWFStaticConstants.HANDLEID);
objTxnInfo.setPrefLang(UICWFStaticConstants.LANGUAGE);
objTimeStamp = UICTimeStampGen.getUniqueTimeStamp(objTxnInfo);
objTxnInfo.setTxnEntryTimeStamp(objTimeStamp);
objEventLog = new UICEvent();
//Get EventLog and Log
objEventLog.logEvent(objTxnInfo,"UICWFActImplMain",UICUtil.EVENT_START,"main:");
//Get the property parameter
UICWFProperties.loadWFProperties();
System.out.println("2");
//Getting Agent
objAgent = new Agent();
objAgent.setLocator(Agent.LOC_LOCATOR);
objAgent.setName(UICWFProperties.AGENT_NAME);
System.out.println("2A "+Agent.LOC_LOCATOR+" "+UICWFProperties.AGENT_NAME);
//Execution service
objService =objAgent.locate(UICWFProperties.SYSTEM_GROUP, UICWFProperties.SYSTEM);
System.out.println("objService"+objService+" "+objAgent.getLocator()+" "+objAgent.getName());
//Execution Agent
objEAgent = objAgent.getExecutionAgent();
//Get in Container
objInCntr = objEAgent.inContainer();
objOutCntr = objEAgent.outContainer();
UICErrorHandler.printDebug("UICWFActImp Agennt after");
System.out.println("3");
if (objInCntr == null || objOutCntr == null) {
UICErrorHandler.printDebug("Incntr OR outcntr is null");
UICErrorHandler.handleException(
objTxnInfo.getUserId(),
objTxnInfo.getHandleId(),
UICUtil.FATAL,
UICUtil.DB_ERROR,
UICWFStaticConstants.ERR_WMS_RWCONTAINER,
UICUtil.RETURN_CODE_NA,
false,
UICErrorInfo.getErrorMessage(
UICWFStaticConstants.ERR_GENERAL,
objTxnInfo.getPrefLang()));
}
//Getting Activity Type from Container
intCurrActSeq = objInCntr.getLong(UICWFStaticConstants.WIDS_ACTIVTY_ID);
intActImplSeq = intCurrActSeq + 1;
Integer objActImplSeq = new Integer(intCurrActSeq);
//Setting Output Container
objOutCntr.setLong(UICWFStaticConstants.WIDS_ACTIVTY_ID, intActImplSeq);
// Get Process Instance id
strProcInstId = objInCntr.getString(UICWFStaticConstants.WIDS_PROC_INSTID);
//UICErrorHandler.printDebug("strProcInstId " + strProcInstId);
//Set Collection
objCollection = new UICCollection();
objCollection.put(UICUtil.TXN_INFO, objTxnInfo);
objCollection.put(UICWFStaticConstants.PROC_INSTC_ID, strProcInstId);
objCollection.put(UICWFStaticConstants.ACT_IMPL_SEQ, objActImplSeq);
//Call Ejb For Activity Implementation
objActvtyImpl = UICEJBRemoteFactory.getActivityImplnRemote();
objActvtyImpl.ActivityImplementation(objCollection);
System.out.println("objOutCntr.toString()"+objOutCntr.toString());
//Sending back outcntr to Execution Server
objEAgent.setOutContainer(objOutCntr);
//UICErrorHandler.printDebug("PGM executed");
System.out.println("Everything has been completed successfully...");
}
catch (FmcException fExp) {
fExp.printStackTrace();
if (fExp.rc == FmcException.FMC_ERROR_COMMUNICATION) {
//UICErrorHandler.printDebug("UICWFLoginUtil: logIn : COMMUNICATION_ERROR");
UICAdminAlertUtil.alertUser(objTxnInfo.getUserId(),
objTxnInfo.getHandleId(),
UICSecurityStaticConstants.ERR_COMM_MQ,
"UICWFActImplMain::main()",
fExp);
UICErrorHandler.handleException(
objTxnInfo.getUserId(),
objTxnInfo.getHandleId(),
UICUtil.FATAL,
UICUtil.WMS_ERROR,
UICWFStaticConstants.WMS_ERR_CD + fExp.rc,
UICUtil.RETURN_CODE_NA,
false,
UICErrorInfo.getErrorMessage(
UICWFStaticConstants.ERR_WMS,
objTxnInfo.getPrefLang()));
}
}
catch (Exception ex) {
ex.printStackTrace();
UICErrorLog.logError(objTxnInfo.getUserId(),objTxnInfo.getHandleId(),UICUtil.FATAL,UICUtil.DATA_ERROR,UICWFStaticConstants.ERR_GENERAL,ex.getMessage()+"-- For Process Instance ->"+strProcInstId);
//try {
//UICMailManager objMailManager = new UICMailManager();
//UICMailMessage.setBody(
//objMailManager.buildFailureMesg(ex, UICWFStaticConstants.ACTY_IMPL));
//UICWFSendMail.sendMail();
//} catch (Exception iex) {
//UICErrorHandler.logError(
//objTxnInfo.getUserId(),
//objTxnInfo.getHandleId(),
//UICUtil.FATAL,
//UICUtil.DB_ERROR,
//UICWFStaticConstants.ERR_MAIL_ACTVTY_FAIL,
//UICUtil.RETURN_CODE_NA,
//false,
//iex);
//}
}finally{
strProcInstId = null;
}
objEventLog.logEvent(objTxnInfo,"UICWFActImplMain",UICUtil.EVENT_END,"main: completed successfully");
//UICErrorHandler.printDebug("UICWFActImplMain: End");
}
************************************************************
And I am starting this class from a windows batch file using
java UICWFActImplMain C:\mqbatches iiop://172.16.4.39:2809 1>>C:\mqbatches\MQ_Activity_Output.txt
and I get the following error
com.ibm.workflow.api.FmcException:
FMC38009E MQSeries Workflow API Error :
API Return Code : 126
Error Origin : e:\v350\src\fmcjccon.cxx, line 1196
Error Message : FMC00126E Program Execution Agent not running
Nested Exception : None
at com.ibm.workflow.api.loc.ExecutionAgentImpl.inContainer(ExecutionAgentImpl.java:73)
at gov.nmdol.uiclaim.util.UICWFActImplMain.main(UICWFActImplMain.java:122)
I have already started the program execution agent using the following command
fmcxspea -u=ADMIN -p=password -g=FMCGRP -s=FMCSYS -y=FMC
This starts the PEA but still I get the same error.
And my batch file looks like this :
*************************************************************
set CLASSPATH=C:\Program Files\WebSphere\AppServer\lib\bootstrap.jar;C:\Program Files\WebSphere\AppServer\lib\ecutils.jar;C:\Program Files\WebSphere\AppServer\lib\ffdc.jar;C:\Program Files\WebSphere\AppServer\lib\idl.jar;C:\Program Files\WebSphere\AppServer\lib\iwsorb.jar;C:\Program Files\WebSphere\AppServer\lib\j2ee.jar;C:\Program Files\WebSphere\AppServer\lib\lmproxy.jar;C:\Program Files\WebSphere\AppServer\lib\marshall.jar;C:\Program Files\WebSphere\AppServer\lib\messagingClient.jar;%CLASSPATH%
set CLASSPATH=C:\Program Files\WebSphere\AppServer\lib\naming.jar;C:\Program Files\WebSphere\AppServer\lib\namingclient.jar;C:\Program Files\WebSphere\AppServer\lib\namingserver.jar;C:\Program Files\WebSphere\AppServer\lib\ras.jar;C:\Program Files\WebSphere\AppServer\lib\txClientPrivate.jar;C:\Program Files\WebSphere\AppServer\lib\utils.jar;C:\Program Files\WebSphere\AppServer\lib\wsexception.jar;C:\NMDOL\jarfrom67\NMDOLEJB.jar;C:\Program Files\WebSphere\AppServer\properties\implfactory.properties;%CLASSPATH%
set CLASSPATH=C:\Program Files\WebSphere\AppServer\java\jre\lib\ext\ibmorb.jar;C:\Program Files\WebSphere\AppServer\java\jre\lib\ext\iwsorbutil.jar;%CLASSPATH%
set CLASSPATH=C:\NMDOL\jarfrom67\NMDOLEJB.jar;C:\mqbatches\implfactory.jar;C:\Program Files\lpp\fmc\bin\java3407\fmcojagt.jar;C:\Program Files\IBM WebSphere MQ Workflow\BIN\fmcojagt.jar;%CLASSPATH%
echo Default System JDK...
java -version
echo Changing JDK Path for Activity Implementation Program Execution...
set PATH=C:\Program Files\WebSphere\AppServer\java\bin;%PATH%
java -version
echo %CLASSPATH%
*************************************************************
I am new to MQ Workflow. I didnt understand the difference between MQ Workflow Java Agent that we configure using the fmczutil and the Program Execution Agent.
Please let me know if I am missing something...
Thanks in advance
Partha |
|
Back to top |
|
 |
vennela |
Posted: Wed Dec 28, 2005 6:54 pm Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
If you want to debug Activity Implementation, start PEA. Do not start CORBA agent. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|