ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Java plug-in nodes

Post new topic  Reply to topic Goto page Previous  1, 2, 3  Next
 Java plug-in nodes « View previous topic :: View next topic » 
Author Message
amigupta1978
PostPosted: Wed Mar 27, 2002 10:21 am    Post subject: Reply with quote

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
View user's profile Send private message Send e-mail Yahoo Messenger
kolban
PostPosted: Wed Mar 27, 2002 10:27 am    Post subject: Reply with quote

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
View user's profile Send private message
pfaulkner
PostPosted: Wed Mar 27, 2002 10:57 am    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
pfaulkner
PostPosted: Wed Mar 27, 2002 11:11 am    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
kolban
PostPosted: Wed Mar 27, 2002 1:25 pm    Post subject: Reply with quote

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
View user's profile Send private message
kirani
PostPosted: Wed Mar 27, 2002 1:46 pm    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
pfaulkner
PostPosted: Wed Mar 27, 2002 1:48 pm    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
pfaulkner
PostPosted: Wed Mar 27, 2002 2:02 pm    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
pfaulkner
PostPosted: Wed Mar 27, 2002 2:31 pm    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
kirani
PostPosted: Wed Mar 27, 2002 3:11 pm    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
pfaulkner
PostPosted: Wed Mar 27, 2002 3:47 pm    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
Coz
PostPosted: Thu Mar 28, 2002 12:23 am    Post subject: Reply with quote

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
View user's profile Send private message
ChrisAA
PostPosted: Thu Mar 28, 2002 6:17 am    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
pfaulkner
PostPosted: Thu Mar 28, 2002 8:50 am    Post subject: Reply with quote

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
View user's profile Send private message AIM Address
ravi
PostPosted: Tue Apr 02, 2002 8:21 am    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page Previous  1, 2, 3  Next Page 2 of 3

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Java plug-in nodes
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.