Pasquale You have to write some new Java code. The current Synapse code has no support for jUDDI or UDDI. Ideally we would extend the Synapse code to understand a new Endpoint type (the Endpoint type is extensible).
To extend Synapse you must usually write both a new XML syntax (like the ones you have been trying), the code to parse that XML, and the underlying code to act on that information (in this case the code to make a query from UDDI and to pass the right URL back to the rest of Synapse). Paul On Wed, Dec 10, 2008 at 10:05 PM, Pasquale Campitiello <[EMAIL PROTECTED]> wrote: > We also tried this: > > <definitions xmlns="http://ws.apache.org/ns/synapse"> > <sequence name="main"> > <in> > <send> > <!-- get epr from the given wsdl --> > <endpoint> > <parameter > name="tModelKey">uuid:EA9D6C10-C56F-11DD-ABCC-D8EB6125F14E"</parameter> > <address uri="http://localhost:8080/juddi"/> > <parameter name="userID">juddi</parameter> > </endpoint> > </send> > </in> > <out> > <send/> > </out> > </sequence> > </definitions> > > And the server doesn't return exceptions. It seems all right, but we don't > know if it is a correct implementation! > How can we undestand if this is a correct implementation? > Once we start Synapse with this sample, this endpoint will return something? > What are the effects and where are they visible? > > Thank you > > Pasquale > > > > > 2008/12/9 Pasquale Campitiello <[EMAIL PROTECTED]> >> >> Hi, >> >> in order to create the endpoint, we looked at sample 56 in >> http://synapse.apache.org/Synapse_Samples.html. >> We followed this link >> http://www.descriptor.com/articles/web-services/juddi-p2.html to know how >> publish WSDL with jUDDI console. Now we published some example WSDL, and we >> have some information about them: business key, tModel key, ecc. We know >> also that, running axis2server, at >> http://localhost:9000/soap/SimpleStockQuoteService?wsdl there is the WSDL >> for "SimpleStockQuoteService". >> Starting from this information we roughly tried to modify >> synapse_sample_56.xml, and we saved the following file in sample directory >> like synapse_sample_500.xml: >> >> <definitions xmlns="http://ws.apache.org/ns/synapse"> >> <sequence name="main"> >> <in> >> <send> >> <!-- get epr from the given wsdl >> --> >> <endpoint> >> <uddi tmodel="uuid:EA9D6C10-C56F-11DD-ABCC-D8EB6125F14E" /> >> </endpoint> >> </send> >> </in> >> <out> >> <send /> >> </out> >> </sequence> >> </definitions> >> >> We inserted the tModel key of the WSDL we published with jUDDI >> ("uuid:EA9D6C10-C56F-11DD-ABCC-D8EB6125F14E"). >> >> Now, we: >> -> deploy the SimpleStockQuoteService >> -> start the sample Axis2 server. >> -> start the Synapse configuration numbered 500 (synapse -sample 500) >> >> and the server is "Ready for processing"! Now we don't understand if this >> is correct or it is accidental! >> >> We think that it is also correct to insert >> http://localhost:9000/soap/SimpleStockQuoteService?wsdl in sample XML, but >> we don't know how. We did many other XML attempts, but everytime we got some >> exception. >> We also searched in the UDDI2.0 specification but we didn't find any >> useful information about endpoints, and WSDL. We are searching in the WSDL >> specification. >> >> Now the questions are: >> >> 1) How we can create correctly the endpoint? Is the Synapse sample 56 >> useful in this way? >> >> 2) Just to have the tModel key is sufficient to link to Synapse to the >> service WSDL? >> >> 3) Once we created the endpoint what we have to do precisely? And how >> about the interface[s] to implement? >> >> Thanks >> >> Pasquale Campitiello >> >> >> >> 2008/12/7 Pasquale Campitiello <[EMAIL PROTECTED]> >>> >>> I recompiled the Synapse source with JDK5_10 and now both jUDDI and >>> Synapse run without problems. >>> >>> We are searching for information about endpoint on UDDI2.0 and WSDL2.0 >>> specifications. >>> >>> Pasquale >>> >>> 2008/12/4 Pasquale Campitiello <[EMAIL PROTECTED]> >>>> >>>> Ok. We published a generic service generic SimpleStockQuote with jUDDI. >>>> This XML file summarize all the basic data of the service (tmodel, url >>>> ecc): >>>> >>>> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope >>>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" >>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema" >>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> >>>> <soapenv:Body> >>>> <serviceDetail generic="2.0" operator="jUDDI.org" >>>> xmlns="urn:uddi-org:api_v2"> >>>> <businessService businessKey="23E5A350-C22A-11DD-A350-8D826382C57F" >>>> serviceKey="471A6F80-C22B-11DD-AF80-A18B79866E43"> >>>> <name>Stock Quote Service</name> >>>> <description>prova 1 dam</description> >>>> <bindingTemplates> >>>> <bindingTemplate bindingKey="472B1150-C22B-11DD-9150-87412D5B2DA6" >>>> serviceKey="471A6F80-C22B-11DD-AF80-A18B79866E43"> >>>> <accessPoint >>>> URLType="http">http://localhost:9000/soap/SimpleStockQuoteService</accessPoint> >>>> <tModelInstanceDetails> >>>> <tModelInstanceInfo >>>> tModelKey="uuid:BB4AF650-C22A-11DD-B650-F49EB0FF9773"> >>>> <instanceDetails> >>>> <overviewDoc> >>>> >>>> <overviewURL>http://localhost:9000/soap/SimpleStockQuoteService?wsdl</overviewURL> >>>> </overviewDoc> >>>> </instanceDetails> >>>> </tModelInstanceInfo> >>>> </tModelInstanceDetails> >>>> </bindingTemplate> >>>> </bindingTemplates> >>>> </businessService> >>>> </serviceDetail> >>>> </soapenv:Body> >>>> </soapenv:Envelope> >>>> -------------------------------- >>>> >>>> in particular (we read on the web): >>>> >>>> The accessPoint, by convention, is the service's endpoint URL >>>> This tModelKey ties the service and binding template to the tModel we >>>> create earlier >>>> >>>> Now, starting from there how can we write the correct endpoint? >>>> Or, at least, what are the information we can use from this XML to >>>> create later the UDDI endpoint? >>>> >>>> Thanks >>>> >>>> Pasquale >>>> >>>> >>>> >>>> 2008/12/3 Pasquale Campitiello <[EMAIL PROTECTED]> >>>>> >>>>> Ok. We solved that problem. >>>>> >>>>> I reinstalled the JDK 5.0 Update 10. The problem was not in the >>>>> CLASSPATH or the JAVA_HOME, but it was the JVM used by Apache Tomcat: I >>>>> right clicked on the Monitor Tomcat icon --> Configure... --> tab Java --> >>>>> browse and set the JDK 5.0_10 JVM (in my case >>>>> C:\Programmi\Java\jdk_jee_5u10\jdk\jre\bin\server\jvm.dll). >>>>> >>>>> I go on with the project. Now I have to recompile Synapse under JDK 5.0 >>>>> Update 10. >>>>> >>>>> Pasquale >>>>> >>>>> >>>>> >>>>> 2008/12/1 Paul Fremantle <[EMAIL PROTECTED]> >>>>>> >>>>>> I'm hoping someone on jUDDI will respond, because I have to admit I >>>>>> don't know. >>>>>> >>>>>> Paul >>>>>> >>>>>> On Mon, Dec 1, 2008 at 7:50 PM, Pasquale Campitiello >>>>>> <[EMAIL PROTECTED]> wrote: >>>>>> > Perfect. Now I'm able to see the log in the console. I do within >>>>>> > Eclipse: >>>>>> > >>>>>> > menu Run --> Open Run Dialog... --> Classpath tab --> select >>>>>> > Bootstrap >>>>>> > Entries --> click Advanced --> Add external folder --> select >>>>>> > %SYNAPSE_HOME%\lib --> then click Up to move it up within Bootstrap >>>>>> > Entries >>>>>> > (however it suffice add %SYNAPSE_HOME%\lib in Bootstrap Entries). >>>>>> > >>>>>> > Now, I'm studying how jUDDI looks to WSDL, how jUDDI can provide >>>>>> > UDDI >>>>>> > methods. I configured correctly jUDDI: I can see the "Happy jUDDI!" >>>>>> > page >>>>>> > without errors. But I have a common problem: in the jUDDI console >>>>>> > when I >>>>>> > click get_authToken to obtain an authentication token, and I insert >>>>>> > my user >>>>>> > and cred I get always the same error: >>>>>> > >>>>>> > <?xml version="1.0" encoding="utf-8" ?> >>>>>> > <SOAP-ENV:Envelope >>>>>> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> >>>>>> > <SOAP-ENV:Header/> >>>>>> > <SOAP-ENV:Body> >>>>>> > <SOAP-ENV:Fault> >>>>>> > <faultcode>SOAP-ENV:Server</faultcode> >>>>>> > <faultstring>Fault string, and possibly fault code, not >>>>>> > set</faultstring> >>>>>> > </SOAP-ENV:Fault> >>>>>> > </SOAP-ENV:Body> >>>>>> > </SOAP-ENV:Envelope> >>>>>> > >>>>>> > I tried every possible combination of user and cred ("juddi" + >>>>>> > "juddi", >>>>>> > "juddi" + ""; "juddi" + "123456"; "jdoe" + "", ecc.), but >>>>>> > everytime >>>>>> > I got this SOAP response. To configure jUDDI I followed the official >>>>>> > document >>>>>> > >>>>>> > http://svn.apache.org/viewvc/webservices/juddi/trunk/docs/Getting-Started.pdf?revision=547750 >>>>>> > so my configuration file are exactly like specified in the document. >>>>>> > >>>>>> > Googling I read about changing the JDK version. I tried JDK 5 update >>>>>> > 10, JDK >>>>>> > 5 update 16, JDK + JEE 5 update 10, but nothing changed, and besides >>>>>> > with >>>>>> > this versions I can't run Synapse. Now with JDK + JEE 6 update 10, I >>>>>> > can run >>>>>> > Synapse but I'm still blocked with jUDDI. >>>>>> > >>>>>> > Someone can help me? [I post this e-mail also in the jUDDI dev >>>>>> > mailing list] >>>>>> > >>>>>> > Thanks >>>>>> > >>>>>> > Pasquale >>>>>> > >>>>>> > >>>>>> > 2008/11/29 Hiranya Jayathilaka <[EMAIL PROTECTED]> >>>>>> >> >>>>>> >> Hi Pasquale, >>>>>> >> Good to hear that you managed to start and stop Synapse from within >>>>>> >> your >>>>>> >> IDE. Both Eclipse and Idea enable you to configure the classpath. >>>>>> >> AFAIK in Eclipse you have to configure classpath from your >>>>>> >> run/debug >>>>>> >> configuration window. Open up your run configuration window, go to >>>>>> >> the >>>>>> >> classpath tab and hit the advanced button. Then you can add a >>>>>> >> directory of >>>>>> >> your choice to the project classpath. >>>>>> >> In Idea you should go to settings and hit the project settings >>>>>> >> button and >>>>>> >> make your changes to the classpath from there. (Look for a window >>>>>> >> where you >>>>>> >> can specify project dependencies) >>>>>> >> In both IDEs classpath items are shown in a list. You can generally >>>>>> >> select >>>>>> >> items and change the order in which they appear. The first item in >>>>>> >> the list >>>>>> >> will be the first entry in your classpath string. >>>>>> >> Hope this helps. Good luck. >>>>>> >> Thanks >>>>>> >> Best Regards, >>>>>> >> Hiranya >>>>>> >> On Sat, Nov 29, 2008 at 4:40 AM, Pasquale Campitiello >>>>>> >> <[EMAIL PROTECTED]> wrote: >>>>>> >>> >>>>>> >>> Ok. Now I'm really able to run Synapse into Eclipse. >>>>>> >>> Hiranya, I tried to stop Synapse (and so the javaw.exe process) >>>>>> >>> hitting >>>>>> >>> the stop button on Eclipse Console and it is ok. I also tried the >>>>>> >>> QuickStart >>>>>> >>> guide of Synapse, launching the configuration "sample 0" and >>>>>> >>> "sample 150" >>>>>> >>> within Eclipse, and everything successfully completed. >>>>>> >>> >>>>>> >>> But, yet I'm not able to configure the Log4J. I know that IntelliJ >>>>>> >>> IDEA >>>>>> >>> is a commercial IDE and it is possile to apply/buy several types >>>>>> >>> of >>>>>> >>> licenses, but I don't know precisely what I have to do with it for >>>>>> >>> configuring "$BASE_DIR/lib directory to the front of the >>>>>> >>> classpath". >>>>>> >>> >>>>>> >>> Do I have to install IntelliJ IDEA (with "Classroom license", I >>>>>> >>> suppose, >>>>>> >>> because I'm doing this work for univesity...)? >>>>>> >>> Do I have to import Synapse into IDEA? How can I set >>>>>> >>> "$BASE_DIR/lib >>>>>> >>> directory to the front of the classpath"? >>>>>> >>> Is it impossibile to configure the Log4J in Eclipse, without IDEA? >>>>>> >>> >>>>>> >>> Thank you >>>>>> >>> >>>>>> >>> Pasquale >>>>>> >>> >>>>>> >>> >>>>>> >>> 2008/11/25 Hiranya Jayathilaka <[EMAIL PROTECTED]> >>>>>> >>>> >>>>>> >>>> Hi Pasquale, >>>>>> >>>> >>>>>> >>>> Please see my comments in-line. >>>>>> >>>> >>>>>> >>>> On Tue, Nov 25, 2008 at 4:48 AM, Pasquale Campitiello >>>>>> >>>> <[EMAIL PROTECTED]> wrote: >>>>>> >>>>> >>>>>> >>>>> I'm proceeding with my project to create an interface to connect >>>>>> >>>>> jUDDI >>>>>> >>>>> 0.9rc4 and Synapse 1.4. I have some questions: >>>>>> >>>>> >>>>>> >>>>> 1) I imported the source code of Synapse in Eclipse with the >>>>>> >>>>> parameter >>>>>> >>>>> specified by Asankha Perera in the last mail. But I don't >>>>>> >>>>> understand this: >>>>>> >>>>> >>>>>> >>>>>> I use the classpath from the IDE project, and with IDEA, I add >>>>>> >>>>>> the >>>>>> >>>>>> $BASE_DIR/lib directory to the front of the classpath to make >>>>>> >>>>>> sure my >>>>>> >>>>>> log4j.properties is correctly picked up and the normal logs >>>>>> >>>>>> appear >>>>>> >>>>> >>>>>> >>>>> It is about the object log (I see that this object is used very >>>>>> >>>>> much)? >>>>>> >>>>> And where is a logfile? >>>>>> >>>> >>>>>> >>>> Synapse uses Apache Commons Logging and Log4J for logging >>>>>> >>>> purposes. The >>>>>> >>>> logging configuration is specified in a file called >>>>>> >>>> log4j.properties which >>>>>> >>>> generally resides in the $BASE_DIR/lib directory. By adding this >>>>>> >>>> directory >>>>>> >>>> to the beginning of your classpath you make the log4.properties >>>>>> >>>> file get a >>>>>> >>>> higher precedence over the other configuration files. This will >>>>>> >>>> enable >>>>>> >>>> Synapse to print out some useful log statements on you IDE >>>>>> >>>> console while it >>>>>> >>>> is operating within your IDE. >>>>>> >>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> THANK YOU >>>>>> >>>>> >>>>>> >>>>> Pasquale Campitiello >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>>> >>>>> 2008/11/13 Pasquale Campitiello <[EMAIL PROTECTED]> >>>>>> >>>>>> >>>>>> >>>>>> I thank you very much for your help, really I'm a beginner but >>>>>> >>>>>> I need >>>>>> >>>>>> to do this work (hard, for me). >>>>>> >>>>>> >>>>>> >>>>>> However, ok, in this weekend I will prepare my computer to run >>>>>> >>>>>> everything (now I have to format for several problems). >>>>>> >>>>>> Then I will try to import the project in Eclipse, and I will >>>>>> >>>>>> ask you >>>>>> >>>>>> my doubts. >>>>>> >>>>>> For example, in the first place what is "implementing a UDDI >>>>>> >>>>>> endpoint, >>>>>> >>>>>> that gets the actual endpoint from UDDI"?. >>>>>> >>>>>> >>>>>> >>>>>> Thanks >>>>>> >>>>>> >>>>>> >>>>>> Pasquale >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> 2008/11/13 Asankha C. Perera <[EMAIL PROTECTED]> >>>>>> >>>>>>> >>>>>> >>>>>>> Pasquale >>>>>> >>>>>>>> >>>>>> >>>>>>>> As for getting the Synapse code into Eclipse, try mvn eclipse >>>>>> >>>>>>>> >>>>>> >>>>>>> >>>>>> >>>>>>> Yes, first do a full online build with "mvn clean install" (or >>>>>> >>>>>>> "mvn >>>>>> >>>>>>> clean install -Dmaven.test.skip" if unit tests fail), and then >>>>>> >>>>>>> do "mvn >>>>>> >>>>>>> eclipse:eclipse" to build the project. >>>>>> >>>>>>> >>>>>> >>>>>>> To run the default configuration from the IDE, what I normally >>>>>> >>>>>>> do is, >>>>>> >>>>>>> build and extract the binary Zip to some location, and use >>>>>> >>>>>>> that location as >>>>>> >>>>>>> the base directory and start the Synapse engine as follows: >>>>>> >>>>>>> >>>>>> >>>>>>> Main class: org.apache.synapse.SynapseServer >>>>>> >>>>>>> VM params: -server -Xms256M -Xmx256M >>>>>> >>>>>>> -Dcom.sun.management.jmxremote >>>>>> >>>>>>> Program parameters: /home/asankha/java/synapse-1.2/repository >>>>>> >>>>>>> /home/asankha/java/synapse-1.2/repository/conf/axis2.xml >>>>>> >>>>>>> /home/asankha/java/synapse-1.2/ >>>>>> >>>>>>> /home/asankha/java/synapse-1.2/repository/conf/synapse.xml >>>>>> >>>>>>> Working directory: /home/asankha/java/synapse-1.2 >>>>>> >>>>>>> >>>>>> >>>>>>> I use the classpath from the IDE project, and with IDEA, I add >>>>>> >>>>>>> the >>>>>> >>>>>>> $BASE_DIR/lib directory to the front of the classpath to make >>>>>> >>>>>>> sure my >>>>>> >>>>>>> log4j.properties is correctly picked up and the normal logs >>>>>> >>>>>>> appear >>>>>> >>>>>>> >>>>>> >>>>>>> From here onwards, Synapse can run purely within the IDE >>>>>> >>>>>>> >>>>>> >>>>>>> asankha >>>>>> >>>>>>> >>>>>> >>>>>>> -- >>>>>> >>>>>>> Asankha C. Perera >>>>>> >>>>>>> http://adroitlogic.org >>>>>> >>>>>>> >>>>>> >>>>>>> http://esbmagic.blogspot.com >>>>>> >>>>>>> >>>>>> >>>>>>> >>>>>> >>>>>>> >>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>> >>>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>>> >>>>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>>> >>>> >>>>>> >>> >>>>>> >> >>>>>> > >>>>>> > >>>>>> > >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Paul Fremantle >>>>>> Co-Founder and CTO, WSO2 >>>>>> Apache Synapse PMC Chair >>>>>> OASIS WS-RX TC Co-chair >>>>>> >>>>>> blog: http://pzf.fremantle.org >>>>>> [EMAIL PROTECTED] >>>>>> >>>>>> "Oxygenating the Web Service Platform", www.wso2.com >>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>>> >>>>> >>>> >>> >> > > -- Paul Fremantle Co-Founder and CTO, WSO2 Apache Synapse PMC Chair OASIS WS-RX TC Co-chair blog: http://pzf.fremantle.org [EMAIL PROTECTED] "Oxygenating the Web Service Platform", www.wso2.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
