Author |
Message
|
jeevan |
Posted: Thu Nov 01, 2012 12:55 pm Post subject: Creating bar file outside of BrokerToolKit in V6.1 |
|
|
Grand Master
Joined: 12 Nov 2005 Posts: 1432
|
I am trying to create a bar file using mqsicreatebar command. it works when I use workspace created by toolkit but when I export code from svn and put into new workspace, it is errorring out.
our flow projects are like this
c:\brokerbuild\workspace
messageflowProject1 -------- main flow project
messageSetProject --------- msgset for mainflow
messageflowProject1 -------- sub flow project1
messageflowProject1 -------- subflow project2
I defined the workspace, project and file as follows
set WS=c:\brokerbuild\workspace
SET PROJECT= messageflowProject1
MF1=messageflowProject1\FLOW1.msgflow
and so on
when I run mqsicreatebar -data %WS% -p %PROJECT% -o %MF1%
I get the follwoing errors for main flow
_mainFLOW1.msgflow has errors.
Please correct the errors and try again.
BIP0988W Error occurred while completing mqsicreatebar command.
BIP0960E Incorrect "-p" or "-o" argument supplied to mqsicreatebar.
and for subflow, it gives
ERROR: Resource _subFLOW1.msgflow cannot be added to the BAR
file because it does not contain any input nodes.
when i only run the command for message set, it works fine. but does not work for mesageflow
Questions
IBM document does not mention whether we can mentionmore then 1 -p or like -o we can have more than on projects. if not how can we achieve creating bar file in this situation? means with subflow. As IBM doc says, point the resoruces with -p is important while creating bar file outside of toolkit.
I tried with -p p1 p2 p3 and -p p1 - p2 -p p3. but still same result.
Thanks
jeevan |
|
Back to top |
|
 |
mapa |
Posted: Thu Nov 01, 2012 4:56 pm Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
Subflows get "baked in" into your messageflow and should not be created as a separate artifact.
Apart from that you need to add also "transient" project references, that is all project references that your flow and all it's referenced projects references.
All those projects should be added using the -p flag.
What it looks like in your somewhat vague workspace listing is that you should add -p p1 p2 p3 and the -o should contain the mfp1 and msp1
In recent versions of WMB7 there are some additional flags that sometimes help you, not sure if any of them are already in 6.1
Code: |
-trace
-cleanBuild
-skipWSErrorCheck
|
|
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Nov 02, 2012 2:59 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
should work with ws\mf1 but I might also try with ws/mf1...(more javaesque)...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jeevan |
Posted: Fri Nov 02, 2012 5:46 am Post subject: |
|
|
Grand Master
Joined: 12 Nov 2005 Posts: 1432
|
fjb_saper wrote: |
should work with ws\mf1 but I might also try with ws/mf1...(more javaesque)...  |
Thanks fjb_saper. it seems the issue is not insyntax, but in flow. As I mentioned, the message set is combiled properly but when include the flow, it fails.
I have read elsewhere that if there is any error in entire flows, it will fail. this is what I am suspecting.
the code pulled out fro the svn, does work. it requies path setting for libraries. I am planning to upload my own code, download it and create bar.
thanks
j |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Nov 02, 2012 5:53 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
6.1 is less strict than v7 and later.
But you should have a workspace that is free of projects that have any errors, anyway.
Then you have to make sure that the mqsicreatebar command mentions every single project and msgflow file and message definition that needs to be used to build the bar file. |
|
Back to top |
|
 |
ganesh |
Posted: Fri Nov 02, 2012 6:02 am Post subject: |
|
|
Master
Joined: 18 Jul 2010 Posts: 294
|
Make sure you have all the referenced projects specified in -p option and as simple test to make sure your flow does not have errors you might want to try and create a BAR from the toolkit for the same project and check. |
|
Back to top |
|
 |
jeevan |
Posted: Fri Nov 02, 2012 2:02 pm Post subject: |
|
|
Grand Master
Joined: 12 Nov 2005 Posts: 1432
|
ganesh wrote: |
Make sure you have all the referenced projects specified in -p option and as simple test to make sure your flow does not have errors you might want to try and create a BAR from the toolkit for the same project and check. |
when I put all referenced project in -p, then I am able to proceed but still failing except one message flow.
My project has 2 main flow, have referred 3 msgflow and has referred 3 msg sets, and 5 java projects, among them only one message flow is added to the bar file.
questions:
in case of subflow, is it enought to give project with -p or need to point to the flow in -o ? In toolkit, we do not have to select the subflow( even it does not allow)
what is that error means
Processing file .classpath
Failed to add file .classpath to archive file.
/XXXXX_JAVA is in a project that has errors.
Please correct the errors and try again.
but I am able to create bar in toolkit. means the project it is referring, does not have an error. it is clean. Also, i am sing cleanBuild option
Any clue?
Thanks
Last edited by jeevan on Fri Nov 02, 2012 3:54 pm; edited 1 time in total |
|
Back to top |
|
 |
ganesh |
Posted: Fri Nov 02, 2012 3:52 pm Post subject: |
|
|
Master
Joined: 18 Jul 2010 Posts: 294
|
Quote: |
Processing file .classpath
Failed to add file .classpath to archive file.
/COMMON_MESSAGE_FLOWS_JAVA is in a project that has errors.
Please correct the errors and try again. |
Are there any jars which are required by the JAVA project? |
|
Back to top |
|
 |
jeevan |
Posted: Fri Nov 02, 2012 4:00 pm Post subject: |
|
|
Grand Master
Joined: 12 Nov 2005 Posts: 1432
|
ganesh wrote: |
Quote: |
Processing file .classpath
Failed to add file .classpath to archive file.
/COMMON_MESSAGE_FLOWS_JAVA is in a project that has errors.
Please correct the errors and try again. |
Are there any jars which are required by the JAVA project? |
not except the broker jar files
javacompute.jar.
jplugin2.jar
Where should I keep these jar file ? For the tool kit purpose, I have put these in a directory.
thanks
j |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Nov 02, 2012 8:34 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
You should only need to reference any external jars...
You should not need to reference the internal jars...
If having external jars you might have them all in project and reference that project...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jeevan |
Posted: Fri Nov 02, 2012 10:52 pm Post subject: |
|
|
Grand Master
Joined: 12 Nov 2005 Posts: 1432
|
fjb_saper wrote: |
You should only need to reference any external jars...
You should not need to reference the internal jars... |
Let's say, we have these internal jar files in c:/library directory while the app was being developed. Do I have to have same directory structure in build server? In fact I am in very early stage but the final goal is to go to automatic build.
I have taken exact same code which is working from tool kit. I have only copied into a new workspace without .metadata file. the classpath or build path structure has not changed.
fjb_saper wrote: |
If having external jars you might have them all in project and reference that project...  |
I do not have any external jars. in case, there are any ( this is not my code and actually I am only helping developer in using automatic build ( eventually continuous building. )
I am not sue what else did I miss. |
|
Back to top |
|
 |
ganesh |
Posted: Sat Nov 03, 2012 6:32 am Post subject: |
|
|
Master
Joined: 18 Jul 2010 Posts: 294
|
Quote: |
I do not have any external jars. in case, there are any ( this is not my code and actually I am only helping developer in using automatic build ( eventually continuous building. )
|
If you have the projects in your toolkit work space you can check for the references of each project you have specified in your automated build and make sure you have not missed any or open the .project file from outside of toolkit for each project and see if something is missing. |
|
Back to top |
|
 |
fjb_saper |
Posted: Sat Nov 03, 2012 2:24 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
The .classpath not being right let's me believe that you are indeed referencing something outside the normal buildpath.
This being said the best way to hit this is to make sure that those references stay relative to the workspace.
Like if you have to reference an outside jar, create a project and put the jars in the lib folder under the project. Then reference the created project.
So now review the classpath in the original project and make sure it is relative to the workspace.
Thus referencing the empty project with the lib directory will allow you to build the bar file. You may also want to consider making the jar files a deployable/compilable object. i.e. -o proj/lib/external.jar and thus add it to the bar file...
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jeevan |
Posted: Sun Nov 04, 2012 1:46 am Post subject: |
|
|
Grand Master
Joined: 12 Nov 2005 Posts: 1432
|
fjb_saper wrote: |
The .classpath not being right let's me believe that you are indeed referencing something outside the normal buildpath.
This being said the best way to hit this is to make sure that those references stay relative to the workspace.
Like if you have to reference an outside jar, create a project and put the jars in the lib folder under the project. Then reference the created project.
So now review the classpath in the original project and make sure it is relative to the workspace.
Thus referencing the empty project with the lib directory will allow you to build the bar file. You may also want to consider making the jar files a deployable/compilable object. i.e. -o proj/lib/external.jar and thus add it to the bar file...
Have fun  |
I carefully examinied, there are not extermal jar files to be added.
If I use toolkit, I can compile without any issue.
when I createbar headless ( wthout .metadata dir in path) in a new workspace, I only adds one message flow and one message set. this tells me at least the syntax is correct.
the errow while compibling headless is as follows
ERROR: Resource X1_FLOW.msgflow cannot be added to the BAR file
because it does not contain any input nodes.
ERROR: Resource x2.msgflow cannot be added to the BAR fil
e because it does not contain any input nodes.
ERROR: Resource X3.msgflow cannot be added to the BAR file be
cause it does not contain any input nodes.
ERROR: Resource x4.msgflow cannot be added to the BAR file
because it does not contain any input nodes.
ERROR: Resource x5.msgflow cannot be added to the BAR file b
ecause it does not contain any input nodes.
ERROR: Resource x6.msgflow cannot be added to the BAR
file because it does not contain any input nodes.
when I copy that .metadata. then i adds all java, message set, and two main flows but does not add subflow. the error is as i mentioend above.
I am not sure what is causign this issue. I would appreciate your help. |
|
Back to top |
|
 |
fjb_saper |
Posted: Sun Nov 04, 2012 2:26 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
jeevan wrote: |
ERROR: Resource X1_FLOW.msgflow cannot be added to the BAR file
because it does not contain any input nodes.
ERROR: Resource x2.msgflow cannot be added to the BAR fil
e because it does not contain any input nodes.
ERROR: Resource X3.msgflow cannot be added to the BAR file be
cause it does not contain any input nodes.
ERROR: Resource x4.msgflow cannot be added to the BAR file
because it does not contain any input nodes.
ERROR: Resource x5.msgflow cannot be added to the BAR file b
ecause it does not contain any input nodes.
ERROR: Resource x6.msgflow cannot be added to the BAR
file because it does not contain any input nodes.
when I copy that .metadata. then i adds all java, message set, and two main flows but does not add subflow. the error is as i mentioned above.
I am not sure what is causing this issue. I would appreciate your help. |
OK. Seems to me you are completely confusing the levels. You cannot add any subflow with -o unless you are at WMB level 8. You say you are at level 6.1. The subflow gets in-lined into the mainflow and you only specify the -o for the mainflow...
Can you show the command line that produced these error messages?
Also to add a subflow to a bar file at level 8, I believe it has to have the name of *.subflow, not *.msgflow....
Now if those are genuine errors at level 6.1 and you did not add the subflows to the -o command, I would seriously check if the subflows are built correctly... or referenced correctly
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
|