Author |
Message
|
amigupta1978 |
Posted: Wed Mar 27, 2002 10:21 am Post subject: |
|
|
Centurion
Joined: 22 Jan 2002 Posts: 132 Location: India
|
hi...
I think this is the problem that ur .jar file doesnot give the structure com/ibm/YourClassname
Since I think in your wdp file and the XML file u must have put the classname as com.ibm.Yourclassname.
so while making the jarfile follow this structure..
amit
|
|
Back to top |
|
 |
kolban |
Posted: Wed Mar 27, 2002 10:27 am Post subject: |
|
|
 Grand Master
Joined: 22 May 2001 Posts: 1072 Location: Fort Worth, TX, USA
|
That's your problem ... you specified that the class is part of a package (com.ibm.samples). As such, your class must be in the subdirectory
com/ibm/samples
This is Java stuff. When the JVM loads the JAR when it wants to find class x.y.z.MyClass, it looks for the class in the folder x/y/z/MyClass.class
|
|
Back to top |
|
 |
pfaulkner |
Posted: Wed Mar 27, 2002 10:57 am Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
But I removed the package statement (like you suggested earlier) so I have no package structure for this class. |
|
Back to top |
|
 |
pfaulkner |
Posted: Wed Mar 27, 2002 11:11 am Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
ok..I started over. From a new copy of the sample program (examplesJavaPlugincomibmsamplesSwitchNode.java). I removed the package and changed the following code:
public static String getNodeName()
{
return "SwitchNode";
}
So here is my complete code
---------------------------------------------------------------------
/*
* Licensed Materials - Property of IBM
* 5648-C63
* (C) Copyright IBM Corp. 1999, 2001
*/
import com.ibm.broker.plugin.*;
/**
* Sample plugin node.
* This node propagates the incoming message to one of several output terminals
* depending on the content of the message.
* A minimal test message for this node would be:
* <data><action>change</action></data>
*/
public class SwitchNode extends MbNode implements MbNodeInterface
{
String _nodeTraceSetting;
/**
* Switch node constructor.
* This is where input and output terminal are created.
*/
public SwitchNode() throws MbException
{
createInputTerminal("in");
createOutputTerminal("add");
createOutputTerminal("change");
createOutputTerminal("delete");
createOutputTerminal("hold");
createOutputTerminal("failure");
}
/**
* This static method is called by the framework to identify this node.
* If this method is not supplied, a default name will be generated
* automatically based on the node's package/class name. In this case
* it would be 'ComIbmSamplesSwitchNode'.
*/
public static String getNodeName()
{
return "SwitchNode";
}
/**
* This evaluate message is called by the broker for each message passing
* through the flow. The message assembly is passed in with the 'assembly'
* parameter. It is possible for a node to have more than one input
* terminal. The terminal that the message has come in on is represented
* by the 'in' parameter.
*/
public void evaluate(MbMessageAssembly assembly, MbInputTerminal in)
throws MbException
{
// Navigate to the relevant syntax element in the XML message
MbElement rootElement = assembly.getMessage().getRootElement();
MbElement switchElement = rootElement.getLastChild().getFirstChild().getFirstChild();
// To aid debugging, text can be printed to stdout/stderr.
// On NT this can be viewed by selecting 'Allow sevice to interact with
// desktop' on the NT Services properties dialog.
// On Unix set the environment variable MQSI_RUN_ATTACHED=1 before
// starting the broker.
if(_nodeTraceSetting.equals("debug"))
{
System.out.println("Element = " + switchElement.getName());
System.out.println("Value = " + switchElement.getValue());
}
// Select the terminal indicated by the value of this element
String terminalName;
String elementValue = (String)switchElement.getValue();
if(elementValue.equals("add"))
terminalName = "add";
else if(elementValue.equals("change"))
terminalName = "change";
else if(elementValue.equals("delete"))
terminalName = "delete";
else if(elementValue.equals("hold"))
terminalName = "hold";
else
terminalName = "failure";
MbOutputTerminal out = getOutputTerminal(terminalName);
// Now propagate the message assembly.
// If the terminal is not attached, an exception will be thrown. The user
// can choose to handle this exception, but it is not neccessary since
// the framework will catch it and propagate the message to the failure
// terminal, or if it not attached, rethrow the exception back upstream.
out.propagate(assembly);
}
/* Attributes are defined for a node by supplying get/set methods.
* The following two methods define an attribute 'nodeTraceSetting'.
* The capitalisation follows the usual JavaBean property convention.
*/
public String getNodeTraceSetting()
{
return _nodeTraceSetting;
}
public void setNodeTraceSetting(String nodeTraceSetting)
{
_nodeTraceSetting = nodeTraceSetting;
}
}
---------------------------------------------------------------------
I created a new plug-in by right clicking on Message Flows and selecting 'Create Plug-in Node'. I gave it a label of 'SwitchNode' and an Identifier of 'Switch'.
I have exported the XML for this plug-in
----------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE XMI SYSTEM "mqsi.dtd" >
<XMI xmi.version="1.0">
<XMI.header>
<XMI.documentation>
<XMI.owner>pfaulkne</XMI.owner>
MessageProcessingNodeType/Switch
</XMI.documentation>
</XMI.header>
<XMI.content>
<MessageProcessingNodeType icon="images/SwitchNode.gif" package="" creator="" version="" useDefaults="true" collectionPath="" scaleableIcon="" versionTimestamp="" isPrimitive="true" longDescription="" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="Switch" xmi.id="Switch" xmi.label="SwitchNode">
<Attribute value="debug" xmi.uuid="" encoded="true" xmi.label="nodeTraceSetting" attributeOwner="" type="String" valueMandatory="false"/>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="add" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="change" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="delete" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="hold" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="failure" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<InTerminal icon="images/InTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="in" xmi.uuid="">
<InTerminalTypeRef icon="images/InTerminal.gif" xml:link="simple" xmi.label="InTerminalType" type="InTerminalType" refType="InTerminalType" href="InTerminalType/InTerminalType" title="InTerminal"/>
</InTerminal>
</MessageProcessingNodeType>
</XMI.content>
</XMI>
-------------------------------------------------------------------------
Checked in the plug-in and created a MessageFlow called 'TestCustomSwitch'.
I exported the xml of 'TestCustomSwitch'
-------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE XMI SYSTEM "mqsi.dtd" >
<XMI xmi.version="1.0">
<XMI.header>
<XMI.documentation>
<XMI.owner>pfaulkne</XMI.owner>
MessageProcessingNodeType/fde47bd2-ec00-0000-0080-ef8ed9a98840
MessageProcessingNodeType/Switch
</XMI.documentation>
</XMI.header>
<XMI.content>
<MessageProcessingNodeType icon="images/MessageProcessingNodeType.gif" package="" creator="" version="" useDefaults="false" collectionPath="" scaleableIcon="" versionTimestamp="" isPrimitive="false" longDescription="" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="fde47bd2-ec00-0000-0080-ef8ed9a98840" xmi.id="fde47bd2-ec00-0000-0080-ef8ed9a98840" xmi.label="TestCustomSwitch">
<Connection icon="images/Connection.gif" creator="" versionTimestamp="" longDescription="" target="1d197cd2-ec00-0000-0080-ef8ed9a98840.in" bendPoints="" versionCreator="" creationTimestamp="" shortDescription="" source="fa0e57d6-ec00-0000-0080-ef8ed9a98840.hold" xmi.label="ConnectionType3">
<ConnectionTypeRef icon="images/ConnectionType.gif" xml:link="simple" xmi.label="ConnectionType" type="ConnectionType" refType="ConnectionType" title="ConnectionType" href="ConnectionType/ConnectionType"/>
</Connection>
<Connection icon="images/Connection.gif" creator="" versionTimestamp="" longDescription="" target="d3827cd2-ec00-0000-0080-ef8ed9a98840.in" bendPoints="" versionCreator="" creationTimestamp="" shortDescription="" source="fa0e57d6-ec00-0000-0080-ef8ed9a98840.add" xmi.label="ConnectionType2">
<ConnectionTypeRef icon="images/ConnectionType.gif" xml:link="simple" xmi.label="ConnectionType" type="ConnectionType" refType="ConnectionType" title="ConnectionType" href="ConnectionType/ConnectionType"/>
</Connection>
<Connection icon="images/Connection.gif" creator="" versionTimestamp="" longDescription="" target="fa0e57d6-ec00-0000-0080-ef8ed9a98840.in" bendPoints="" versionCreator="" creationTimestamp="" shortDescription="" source="6c117cd2-ec00-0000-0080-ef8ed9a98840.out" xmi.label="ConnectionType1">
<ConnectionTypeRef icon="images/ConnectionType.gif" xml:link="simple" xmi.label="ConnectionType" type="ConnectionType" refType="ConnectionType" title="ConnectionType" href="ConnectionType/ConnectionType"/>
</Connection>
<MessageProcessingNode icon="" creator="" orientation="9" versionTimestamp="" longDescription="" y="255" x="303" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="fa0e57d6-ec00-0000-0080-ef8ed9a98840" xmi.label="SwitchNode1">
<MessageProcessingNodeTypeRef icon="images/SwitchNode.gif" xml:link="simple" xmi.label="MessageProcessingNodeType" type="MessageProcessingNodeType" refType="MessageProcessingNodeType" href="MessageProcessingNodeType/Switch" title="SwitchNode"/>
</MessageProcessingNode>
<MessageProcessingNode icon="" creator="" orientation="9" versionTimestamp="" longDescription="" y="165" x="510" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="d3827cd2-ec00-0000-0080-ef8ed9a98840" xmi.label="MQOutput2">
<AttributeGroup xmi.label="basic">
<Attribute xmi.label="queueName" type="String" encoded="false" xmi.uuid="" valueMandatory="false" value="MQSI.OUT.ADD" attributeOwner=""/>
</AttributeGroup>
<AttributeGroup xmi.label="advanced"/>
<AttributeGroup xmi.label="request"/>
<MessageProcessingNodeTypeRef icon="images/MQOutput.gif" xml:link="simple" xmi.label="MessageProcessingNodeType" type="MessageProcessingNodeType" refType="MessageProcessingNodeType" title="MQOutput" href="MessageProcessingNodeType/ComIbmMQOutput"/>
</MessageProcessingNode>
<MessageProcessingNode icon="" creator="" orientation="9" versionTimestamp="" longDescription="" y="339" x="496" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="1d197cd2-ec00-0000-0080-ef8ed9a98840" xmi.label="MQOutput1">
<AttributeGroup xmi.label="basic">
<Attribute xmi.label="queueName" type="String" encoded="false" xmi.uuid="" valueMandatory="false" value="MQSI.OUT.HOLD" attributeOwner=""/>
</AttributeGroup>
<AttributeGroup xmi.label="advanced"/>
<AttributeGroup xmi.label="request"/>
<MessageProcessingNodeTypeRef icon="images/MQOutput.gif" xml:link="simple" xmi.label="MessageProcessingNodeType" type="MessageProcessingNodeType" refType="MessageProcessingNodeType" title="MQOutput" href="MessageProcessingNodeType/ComIbmMQOutput"/>
</MessageProcessingNode>
<MessageProcessingNode icon="" creator="" orientation="9" versionTimestamp="" longDescription="" y="310" x="95" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="6c117cd2-ec00-0000-0080-ef8ed9a98840" xmi.label="MQInput1">
<AttributeGroup xmi.label="basic">
<Attribute xmi.label="queueName" type="String" encoded="false" xmi.uuid="" valueMandatory="true" value="MQSI.IN.CN" attributeOwner=""/>
</AttributeGroup>
<AttributeGroup xmi.label="default">
<Attribute xmi.label="messageDomainProperty" type="MRMessageDomain" encoded="false" xmi.uuid="" valueMandatory="false" value="XML" attributeOwner=""/>
</AttributeGroup>
<AttributeGroup xmi.label="advanced"/>
<MessageProcessingNodeTypeRef icon="images/MQInput.gif" xml:link="simple" xmi.label="MessageProcessingNodeType" type="MessageProcessingNodeType" refType="MessageProcessingNodeType" title="MQInput" href="MessageProcessingNodeType/ComIbmMQInput"/>
</MessageProcessingNode>
</MessageProcessingNodeType>
<MessageProcessingNodeType icon="images/SwitchNode.gif" package="" creator="" version="" useDefaults="true" collectionPath="" scaleableIcon="" versionTimestamp="" isPrimitive="true" longDescription="" versionCreator="" creationTimestamp="" shortDescription="" xmi.uuid="Switch" xmi.id="Switch" xmi.label="SwitchNode">
<Attribute value="debug" xmi.uuid="" encoded="true" xmi.label="nodeTraceSetting" attributeOwner="" type="String" valueMandatory="false"/>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="add" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="change" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="delete" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="hold" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<OutTerminal icon="images/OutTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="failure" xmi.uuid="">
<OutTerminalTypeRef icon="images/OutTerminal.gif" xml:link="simple" xmi.label="OutTerminalType" type="OutTerminalType" refType="OutTerminalType" href="OutTerminalType/OutTerminalType" title="OutTerminal"/>
</OutTerminal>
<InTerminal icon="images/InTerminal.gif" creator="" orientation="9" versionTimestamp="" longDescription="" y="" x="" versionCreator="" creationTimestamp="" shortDescription="" xmi.label="in" xmi.uuid="">
<InTerminalTypeRef icon="images/InTerminal.gif" xml:link="simple" xmi.label="InTerminalType" type="InTerminalType" refType="InTerminalType" href="InTerminalType/InTerminalType" title="InTerminal"/>
</InTerminal>
</MessageProcessingNodeType>
</XMI.content>
</XMI>
-------------------------------------------------------------------------
I added this MessageFlow to my default Execution Group on my NTBROKER1 broker and deployed.
Here are the errors
--------------------------------------------------------------------------
( NTBROKER1.default ) Configuration message requests creation of message flow node type 'SwitchNode' in message flow 'TestCustomSwitch'; broker cannot create nodes of this type.
The message broker received a configuration message containing an instruction to create a message flow node of type 'SwitchNode', in message flow 'TestCustomSwitch', but the broker does not have the capability to create nodes of this type.
Ensure that all necessary node implementation libraries have been installed. Then ensure that the message flow and any nested message flows have been checked in. Re-deploy the new configuration to the broker ensuring that the complete configuration option is used. If the problem persists contact your IBM support center.
( NTBROKER1.default ) Execution group 'default' received an invalid configuration message. See the following messages for details of the error.
The message broker received an invalid configuration message and has not updated its configuration. This can arise as a result of errors in the specification of either message flows or message sets which the configuration manager was unable to detect. It can also result from a message flow requiring a type of node that is not supported by the broker installation, from the broker having become out of step with the configuration database or from other applications sending extraneous messages to the broker's configuration queues (SYSTEM.BROKER.ADMIN.QUEUE & SYSTEM.BROKER.EXECUTIONGROUP.QUEUE).
Check the relevant message flow and message set definitions, check that all necessary plug-ins are installed, perform a complete redeploy of the broker's configuration and ensure that no applications are writing to the broker's configuration queues.
-------------------------------------------------------------------------------
Think that is everything
_________________ Paul Faulkner |
|
Back to top |
|
 |
kolban |
Posted: Wed Mar 27, 2002 1:25 pm Post subject: |
|
|
 Grand Master
Joined: 22 May 2001 Posts: 1072 Location: Fort Worth, TX, USA
|
Your class is called SwitchNode ... I think it should simply be Switch. The definitions call it Switch only the getNodeName() returns SwitchNode
[ This Message was edited by: kolban on 2002-03-27 13:28 ] |
|
Back to top |
|
 |
kirani |
Posted: Wed Mar 27, 2002 1:46 pm Post subject: |
|
|
Jedi Knight
Joined: 05 Sep 2001 Posts: 3779 Location: Torrance, CA, USA
|
Paul,
You forgot to post the contents of .wdp file. I assume your plug-in files are named correctly Switch.wdp and Switch (without any extension).
I see that you have given different label name ("SwitchNode") under <MessageProcessingNodeType> tag in plug-in XML file. The value you specify here must be the same as the value you specify for xmi.label in the WDP file. This value is used by the control center when this node is displayed. What is the value specified in your .wdp file? Is it "Switch" or "SwitchNode"?
Could you please verify this and try giving correct value for this attribute? If the values are different, then you will have to update definition of your plug-in into Configuration repository. Hopefully this will solve the problem.
Please let us know how it goes. Good luck!
Kiran
|
|
Back to top |
|
 |
pfaulkner |
Posted: Wed Mar 27, 2002 1:48 pm Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
based on the Sample Code that doesn't sound right (I used the same naming convention). I changed it anyway (had to use SwitchPlugin because Switch is reserved). Also create a new plugin in the command center to reflect this change.
No change in the error messages....
Do I have to add the plugin to the Execution Group somehow? When I create the new plugin, I check it in, but that's the last thing I do with it.
I don't see anything in the manuals that I am not doing. |
|
Back to top |
|
 |
pfaulkner |
Posted: Wed Mar 27, 2002 2:02 pm Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
What is the WDP file for? I searched the Programming Guide and the only mention of it is in "Appendix D. Installing a plug-in node or parser — without the SmartGuide".
I am using the SmartGuide, I assume the WDP file is generated for me? |
|
Back to top |
|
 |
pfaulkner |
Posted: Wed Mar 27, 2002 2:31 pm Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
Coz,
I used the SmartGuide to create the plugin in my Command Center. I know the xmi.label (from my XML) shows a value of 'Switch' but the documentation says to leave off the trailing 'Node' value for id. Apparantly the product automatically appends Node to the id, I know this is true because if I make the id value SwitchNode then when I try to deloy it complains about something called 'SwitchNodeNode'. |
|
Back to top |
|
 |
kirani |
Posted: Wed Mar 27, 2002 3:11 pm Post subject: |
|
|
Jedi Knight
Joined: 05 Sep 2001 Posts: 3779 Location: Torrance, CA, USA
|
WDP (WebDav Properties) file provides information required by WebDav protocol. This protocol is used between Control Center and Configuration Manager. This file name must be same as your XML interface file definition file, with .wdp extension.
Here is the ComIbmSampleSwitch.wdp file from examples directory,
<?xml version="1.0"?><properties xmlns:D="DAV:"><D:creationdate>1999-10-06T12:54:19-04:00</D:creationdate><D:displayname>repositoryprivateMessageProcessingNodeTypeComIbmSampleSwitch</D:displayname><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:getcontenttype>text/plain</D:getcontenttype><D:xmi.label>SampleSwitch</D:xmi.label><D:getcontenttype>text/plain</D:getcontenttype><D:lockdiscovery xmlns:D="DAV:"/><D:getcontenttype>text/plain</D:getcontenttype><D:icon>images/SampleSwitch.gif</D:icon></properties>
If you are using the SmartGuide to create plug-in files, Control Center will generate these files (WDP and XML) for you. When you see a little icon in front of the plug-in node when it is newly created, these files are stored into <wmqi_root>Toolrepositoryprivate<your_server_name/IP address><ConfigMgr_queue_manager_name>MessageProcessingNodeType directory. You can open these files with any XML/Text editor.
you can get configuration files (WDP and XML) for your plug-in, by checking out your plug-in. The files will be in <wmqi_root>Toolrepositoryprivate<your_server_name/IP address><ConfigMgr_queue_manager_name>MessageProcessingNodeType directory. Make a copy of these files into a different directory before you make any changes. Now modify .wdp or XML config file as per your requirement. Copy back the files to above directory and check-in your plug-in.
|
|
Back to top |
|
 |
pfaulkner |
Posted: Wed Mar 27, 2002 3:47 pm Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
Well I finally had some luck.
I decided to port my plugin to a broker running on Unix and it seems to work. I'm not sure why it doesn't work on NT still. I am using the same MessageFlow and Plugin for both brokers. So at least I know my plugin java code, plugin and Message Flow on the Control center are all okay.
Must be something wrong with my NT Broker???
_________________ Paul Faulkner |
|
Back to top |
|
 |
Coz |
Posted: Thu Mar 28, 2002 12:23 am Post subject: |
|
|
 Apprentice
Joined: 20 Feb 2002 Posts: 44 Location: Basel CH
|
Without being funny, is it definitly a 2.1 broker on the NT machine? |
|
Back to top |
|
 |
ChrisAA |
Posted: Thu Mar 28, 2002 6:17 am Post subject: |
|
|
Newbie
Joined: 27 Mar 2002 Posts: 1
|
There should be no difference in running on these two machines providing they are both v2.1 brokers.
Try taking the jar file and ftping it to the NT box. Then deploy the message flow you had working on the UNIX broker. This will have the correct Node name for your .jar file for your java node.
Simply you must ensure the following.
The name you call your node in the getNodeName() is the same as the Nodename that you supply in pluginwizard on the control centre ( minus the "Node" ending)
i.e: If your getNodeName is as below;
public static String getNodeName()
{
return "ComIbmSwitchNode;
}
You should call the node ComIbmSwitch in the control centre wizard
See the online help in the wizard for further help on this if required.
|
|
Back to top |
|
 |
pfaulkner |
Posted: Thu Mar 28, 2002 8:50 am Post subject: |
|
|
Master
Joined: 18 Mar 2002 Posts: 241 Location: Colorado, USA
|
Definitely using version 2.1 on both NT and AIX.
I FTP'd the jar file and tried to deploy the same Message Flow that works on AIX to the NT Broker. Still get the same errors.
One extra thing to note, I am using the same QMGR on this NT box for my Broker and Configuration Manager. I assume this is okay.
Could it be a security problem? I am using a user id that is a member of Adminstrators plus all the MQ* groups. |
|
Back to top |
|
 |
ravi |
Posted: Tue Apr 02, 2002 8:21 am Post subject: |
|
|
Novice
Joined: 07 Nov 2001 Posts: 16
|
Change the classname to the 'CustomSwitchNode' if your Node type in control center is 'CustomSwitch'. it should be working. |
|
Back to top |
|
 |
|