synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Fremantle" <pzf...@gmail.com>
Subject Re: Link jUDDI 0.9rc4 to Synapse 1.2
Date Thu, 11 Dec 2008 06:53:54 GMT
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
<pas.campitiello@gmail.com> 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 <pas.campitiello@gmail.com>
>>
>> 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 <pas.campitiello@gmail.com>
>>>
>>> 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 <pas.campitiello@gmail.com>
>>>>
>>>> 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 <pas.campitiello@gmail.com>
>>>>>
>>>>> 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 <pzfreo@gmail.com>
>>>>>>
>>>>>> 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
>>>>>> <pas.campitiello@gmail.com> 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 <hiranya911@gmail.com>
>>>>>> >>
>>>>>> >> 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
>>>>>> >> <pas.campitiello@gmail.com> 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 <hiranya911@gmail.com>
>>>>>> >>>>
>>>>>> >>>> Hi Pasquale,
>>>>>> >>>>
>>>>>> >>>> Please see my comments in-line.
>>>>>> >>>>
>>>>>> >>>> On Tue, Nov 25, 2008 at 4:48 AM, Pasquale Campitiello
>>>>>> >>>> <pas.campitiello@gmail.com> 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 <pas.campitiello@gmail.com>
>>>>>> >>>>>>
>>>>>> >>>>>> 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 <asankha@apache.org>
>>>>>> >>>>>>>
>>>>>> >>>>>>> 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: dev-unsubscribe@synapse.apache.org
>>>>>> >>>>>>> For additional commands, e-mail: dev-help@synapse.apache.org
>>>>>> >>>>>>>
>>>>>> >>>>>>
>>>>>> >>>>>
>>>>>> >>>>
>>>>>> >>>
>>>>>> >>
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Paul Fremantle
>>>>>> Co-Founder and CTO, WSO2
>>>>>> Apache Synapse PMC Chair
>>>>>> OASIS WS-RX TC Co-chair
>>>>>>
>>>>>> blog: http://pzf.fremantle.org
>>>>>> paul@wso2.com
>>>>>>
>>>>>> "Oxygenating the Web Service Platform", www.wso2.com
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
>>>>>> For additional commands, e-mail: dev-help@synapse.apache.org
>>>>>>
>>>>>
>>>>
>>>
>>
>
>



-- 
Paul Fremantle
Co-Founder and CTO, WSO2
Apache Synapse PMC Chair
OASIS WS-RX TC Co-chair

blog: http://pzf.fremantle.org
paul@wso2.com

"Oxygenating the Web Service Platform", www.wso2.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Mime
View raw message