We have recently had java services written that read a flat file and place this into memory and a second service that reads from memory and populates a record structure with the values. This was done to replace the read from file flow that was being used. I can “see” the record structure and values in the pipeline when testing, but it seems like this does not exist when I attempt to map from the record structure to other flds. Not having much java experience, I am currently at a loss as to what is causing this and how to correct it. Any thoughts are greatly appreciated !!
Just want to ask a question before we get into solving the problem…
Why are you using Java instead of the webMethods Platform built-in services? You may have a good reason – it sounds like you are reading values in and setting them using System.setProperty(name,value) and then trying to retrieve them using System.getProperty(name). Or maybe not…
That is a legitimate approach but has higher maintenance costs. Can you elaborate on your business problem and maybe the folks here will be able to advocate a better approach to solving the problem.
Sounds like you read the data with no problem, and then at design time you want to see the fields that are available so you can map from them.
Did you define a record structure using Developer? Without this, Developer has no idea what fields are available. Define this record structure and then set the output parameter of your second service to use this definition as a record reference. Then you will see all the fields during flow development.
Hope I’m right with what the issue is…
According to Rob’s advice you give scope of document ex:documentType
name as folder.subfolder.subfolder:documentName.Similarly when ever
you are mapping recordStructure,give path of recordStructure name.
Ex: your record structure reffering from pub folder,exm subfolder
your record name is PODoc.Then map to recordStructure as pub.exm:PODoc
(record reference name).Then i hope it will work.I think you are
mapping record structure as PODoc only.Give entire scope.