I did have one quick question -- If I were instead using PasswordDigest and wanted to validate the provided password, how would you suggest going about that?
For example, I'd like to validate the provided password, then strip off the WS-Security headers, such as in your example, and forward to a JMS queue.
My sincere apologies as I missed answering your question .. If you are still interested in an answer, you should be able to use a Rampart policy that enforces PasswordDigest, and then get it validated through Rampart. If you need a sample policy for this, let us know. The rest should be the same - i.e. stripping WS-Sec off
Submitted by rbanavar on October 18, 2008 - 05:14.
Hello Asankha,
Thanks for the excellent and very useful tutorial.
A problem I am facing is that the WSDL for the service "SimpleStockQuoteService" is not displaying the JMS endpoint. I am following the instructions exactly like in your tutorial. All components start up ok, and I can see new queue "SimpleStockQuoteService" also being created by Axis. After building the service, I try to browse the WSDL for the JMS endpoint, and it is not available.
PS:
When I start up Axis 2 (after uncommenting the "JMS" section), I do observe that Axis does not recognize the SimpleStockQuoteService queue (even though it exists) and it seems to be creating the queue afresh.
-----------
2008-10-16 14:07:35,759 [-] [WrapperSimpleAppMain] WARN JMSConnectionFactory Cannot find destination : SimpleStockQuoteService. Creating a Queue
----------
Submitted by rbanavar on October 18, 2008 - 12:47.
Asankha,
I have attached the Axis2.xml for your reference.
Also, here are the version numbers of the components:
a. ESB: v1.7 (using embedded Axis2 server)
b. ActiveMQ: v5.1.0
I also re-started ActiveMQ while Axis2 was running. Axis2 threw an exception saying no JMS is available. After re-starting ActiveMQ, Axis2 successfully re-connects. I have attached the corresponding log for that also.
Your axis2.xml looks ok.. and the log file shows that the SimpleStockQuoteService started listening on the JMS Queue named "SimpleStockQuoteService".. you should be able to see this on the ActiveMQ web or JMX consoles as well. The wso2-esb.log you sent seems similar to the sample server log? Does your example run successfully? i.e. can you bridge from http to JMS. You could set the log level to DEBUG on the log4,properties for the category "log4j.category.org.apache.synapse" (e.g. log4j.category.org.apache.synapse=DEBUG) to get more information
Also when you bridge from http to JMS, you should be able to see the message posted by the ESB to the JMS queue via ActiveMQ consoles mentioned above.. do you see them? or do you see two queues for SimpleStockQuoteService ? Can you attach a screen shot preferably of the AMQ JMX console view ?
Submitted by rbanavar on October 20, 2008 - 08:06.
Asankha,
Thanks for your reply.
The example runs successfully when I use ESB version v1.6 and Active MQ version 4.1.1 (per tutorial). But the example does not run successfully when I use ESB version v1.7.1 and ActiveMQ version 5.1.0. I am stuck because the WSDL does not show me the JMS address location, which I need to create the endpoint on the ESB...That is the first difficulty.
I did browse through the JMX console. I have attached the snapshot of the AMQ JMX console.
Here are some observations:
1. When I start up the Axis2 server bundled with ESB v1.7.1, I can see the jms-listener for the SimpleStockQuoteService. The address is also correct. But WSDL doesnt show the JMS address. See jmx console snapshot for "apache-synapse" when running esbv1.7.1
2. When I start up the Axis2 server bundled with ESB v1.6, and open the JMX console, I dont see the "jms-listener" (see snapshot). But I can see the JMS address in the WSDL. See jmx console snapshot for "apache-synapse" when running esbv1.6
The issue seems to be with Axis2 creating the runtime WSDL.
Also, I tried one more thing. I started up AMQ v1.5 and Axis2Server bundled with esb1.6 and took the JMS address shown in the WSDL. Then I started up ESB v1.7.1, and tried to create an endpoint. It errored out saying the following:
[com.ctc.wstx.exc.WstxLazyException] com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'transport.jms.ConnectionFactoryJNDIName' at [row,col {unknown-source}]: [1,1007]
So, I did try different combinations to isolate the problem, but I am not able to reach a conclusion. Hopefully, you may have some clues!
Submitted by rbanavar on October 20, 2008 - 16:27.
Hi Asankha,
Thanks for the reply.
I think in your reply you missed the line which needed to uncomment. Appreciate if you can specify the same.
BTW, I copied over the build.xml from esb v1.6 and built the example in the esb v1.7.1 samples directory. When I bring up Axis2 (embedded in esb v1.7.1), I see the same problem.
In the meanwhile, I have raised a JIRA at the site you mentioned.
Submitted by rbanavar on October 21, 2008 - 04:00.
Hi Asankha,
Appreciate your response.
Well, I looked at the build.xml in the directory:
C:\WSO2\wso2esb-1.7.1\samples\axis2Server\src\SimpleStockQuoteService and the line you mentioned is not commented.
I have attached the build.xml file (renamed it as txt so that my firewall doesnt strip it out) for your reference.
Submitted by rbanavar on October 21, 2008 - 05:22.
Hi Asankha,
Thanks for your reply. I modified the build.xml (commented the suggested line) and I can see the JMS endpoint in the WSDL.
Unfortunately, I am not able to create an endpoint in the the ESB v1.7.1 for the JMS endpoint. It errors out saying:
-------------
[com.ctc.wstx.exc.WstxLazyException] com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'transport.jms.ConnectionFactoryJNDIName' at [row,col {unknown-source}]: [1,1007]
-------------
I saw a JIRA for this issue being raied for a previous version. Looks like the issue has cropped up again.
Would appreciate if you can suggest a remedy for this.
I have reported this error message in the JIRA I raised. Let me know if a seperate JIRA is required for this and I can raise it.
Submitted by rbanavar on October 21, 2008 - 12:53.
Asankha,
Thanks for your help. I could successfully create an endpoint by escaping "&".
I also tried out the example by firing a SOAP request to the HTTP endpoint and it successfully mediated between HTTP and JMS.
I did get a warning on the Axis2 console which looks like:
--------
Tue Oct 21 15:25:23 EDT 2008 samples.services.SimpleStockQuoteService :: Generating quote for : IBM 2008-10-21 15:25:23,530 [-] [jms-Worker-5] WARN JMSConnectionFactory Error looking up destination for JNDI name : temp-queue://ID:sdg10071tdbd1-3030-1224615871250-1:4:1
--------
I guess the temp-queue gets destroyed after the response is fed into the ESB, so Axis2 cribs that it cannot find the temp-queue later. But I would appreciate your answer on this.
I assume you will be incorporating the two changes (1. commenting the line in the WSDL and 2. escaping "&") with the next minor version of the code. Let me know if I should close the JIRA or will WSO2 close it.
My next step will be to build a ws-policy file in order to secure the messages like shown in the tutorial. Would it be possible to post the sample ws-policy file on this page so we can use it as a reference?
Another related question (sorry I am tagging too many questions!)
I am using ws-addressing to send the response to a remote endpoint. When I examine the arrival message at the remote endpoint, I see a bunch of JMS headers, which makes the remote endpoint aware of the inner transport. Is it possible to suppress the JMS headers in the response ?
>I did get a warning on the Axis2 console which looks like:
>--------
>Tue Oct 21 15:25:23 EDT 2008 >samples.services.SimpleStockQuoteService :: Generating >quote for : IBM 2008-10-21 15:25:23,530 [-] [jms-Worker-5] >WARN JMSConnectionFactory Error looking up destination for >JNDI name : temp-queue://ID:sdg10071tdbd1-3030-1224615871250-1:4:1
>--------
>I guess the temp-queue gets destroyed after the response >is fed into the ESB, so Axis2 cribs that it cannot find >the temp-queue later. But I would appreciate your answer >on this.
Yes, the temp queue gets deleted soon after. Anyway a temp queue is accessible only via the connection that created it, and by the recipient. The warning is a generic warning, and can be safely ignored
>I assume you will be incorporating the two changes (1. >commenting the line in the WSDL and 2. escaping "&") with >the next minor version of the code.
Yes, we will
>Let me know if I should close the JIRA or will WSO2 close it.
WSO2 QA team will close it after verification with the next release
>Would it be possible to post the sample ws-policy file on this page so we can use it as a reference?
attached as ws-policy.xml
Also note that the security header to remove is wsse:Security, where wsse refers to the http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd namespace
>When I examine the arrival message at the remote endpoint, >I see a bunch of JMS headers, which makes the remote >endpoint aware of the inner transport. Is it possible to >suppress the JMS headers in the response ?
Since the final transport is JMS, there will be some core JMS headers present anyway.. however if you see any HTTP headers etc which got propagated, you could use the property mediator, and "remove" the header by selecting the scope as "transport"
i.e. <property name="string" [action=set|remove] (value="literal" | expression="xpath") [scope=transport|axis2|axis2-client]/>
As you might think from my previous message, like Ravi, I've also being trying to follow your steps, but I'm having some trouble after setting the WS-Security policy to the proxy.
But first of all, Ravi's questions, as well as your prompt answers have being incredibly helpful (since I've experienced the same problems). Thank you both!
Going back to my question, first, I saw in your presentation, that the policy you set up, was based on Sample 03 from Rampart's samples, so I tried setting that policy up in the "Log Registry". I got some Null point errors when running the client, so after taking a closer look, I saw that when you were calling the client, the -Dpolicy was "./../../repository/conf/sample/resources/policy/client_policy_3.xml". When I followed that path, to my surprise, there was the policy you attached in the previous answer, named "policy_3.xml", as well as the client policy ("client_policy_3.xml")! :)
I'm not quite familiarized with WS-Security policies nor Rampart, so I might be making some mistake I can't see. But if you could take a look at the attached file ("running client.txt"); from the second I set up the WS-Security policy into the proxy, even before setting the filter to take out the header, I get the attached error message.
I also attach what the ESB Console shows under "Manage > Configuration", in case it helps ("proxy setup.xml" and "sec-policy setup.xml").
Just for you to know, before setting up the Security policy (meaning, raw client-ESB-JMS-Server comunication), the request made by the client worked fine.
For what I see, is like the client policy is not working..? I attached the client policy file I am using as well, just in case... ("client_policy_3.xml")
So, I couldn't go any further from this point, no matter the many attempts I made. But being so close, I really want to see this scenario working.
Glad to hear that the forums have been helpful.. as for the problem you are seeing
[java] Original Exception was java.security.InvalidKeyException: Illegal key size or default parameters
.. its because you haven't applied the unlimited strength policy files for your JDK to use large key sizes for encryption. This is listed in the initial slides as:
JDK 1.5.x
- Set JAVA_HOME, and add JDK to Path
- Install unlimited strength crypto policy files
To solve this, go to http://java.sun.com/javase/downloads/index_jdk5.jsp and download and install the "Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0"
Submitted by rbanavar on October 22, 2008 - 07:25.
Hi Asankha,
Thanks very much for your reply.
I have been held up with a few other tasks so I couldnt test out the ws-security implementation. Looks like Alejandra has been able to progress further. I will test the policy out and let you know my observations.
Submitted by rbanavar on October 22, 2008 - 09:12.
Hello Asankha,
This might sound trivial but..
I did observe an issue with Axis2Client. All the while I have been using SOAPUI to fire SOAP requests to the web service. I am trying to use the Axis2Client for trying out the tutorial, and it errors out.
stockquote:
[java] 13:03:07,738 [main] INFO DeploymentEngine - No services directory was found under C:\WSO2\wso2esb-1.7.1\samples\axis2
Client\client_repo.
[java] 13:03:07,863 [main] INFO ModuleDeployer - Deploying module: addressing - file:/C:/WSO2/wso2esb-1.7.1/samples/axis2Cli
ent/client_repo/modules/addressing.mar
[java] 13:03:07,926 [main] INFO ModuleDeployer - Deploying module: Mercury - file:/C:/WSO2/wso2esb-1.7.1/samples/axis2Client
/client_repo/modules/mercury-mar.mar
[java] 13:03:07,973 [main] INFO ModuleDeployer - Deploying module: rampart - file:/C:/WSO2/wso2esb-1.7.1/samples/axis2Client
/client_repo/modules/rampart.mar
[java] 13:03:08,004 [main] INFO ModuleDeployer - Deploying module: metadataExchange - file:/C:WSO2/wso2esb-1.7.1/webapp/WEB
-INF/lib/mex-1.4-impl.jar
[java] 13:03:08,098 [main] INFO JMSSender - JMS Sender started
[java] org.apache.axis2.AxisFault: namespace mismatch require http://services.samples found http://services.samples/xsd
[java] at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:512)
[java] at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:370)
[java] at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
[java] at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
[java] at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
[java] at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:548)
[java] at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:528)
[java] at samples.userguide.StockQuoteClient.executeClient(Unknown Source)
[java] at samples.userguide.StockQuoteClient.main(Unknown Source)
BUILD SUCCESSFUL
Total time: 1 second
-----------------------
Example responds perfectly well with SOAP UI.
Observations
1. Looks like a folder "services" is missing in the release 1.7.1 under the Axis2Client\client_repo.
2. Even when I try the example without JMS enabled, the client still says "JMS sender started"
The issue you are seeing now is because we commented out the WSDL shipped with the sample service we deployed on the sample server to get over the initial JMS issue. The sample client is hard coded to a specific namespace, and without the WSDL, the service defaults to a different name space
[java] org.apache.axis2.AxisFault: namespace mismatch require http://services.samples found http://services.samples/xsd
The rest of the issues are ignorable warnings, since this is a simple client, and thus we do not have any services deployed on it (i.e. usually services are deployed on the server side) and the JMS sender starting means that if the client wishes to send out a message over JMS it would be supported - i.e. provided that the JMS URL is correct and necessary JARs are made available on the client side
I will check with the others on why the JMS URL was not showed on the sample Axis2 server to fix our root cause..
Sorry to bother you again, but I'm having a new issue...
The request I'm making isn't reaching the Axis2! :(
The message error says: [java] org.apache.axis2.AxisFault: The input stream for an incoming
message is null. ("running client SEC.txt").
When look to Axis2's prompt, there is no activity. Apart from that, is it normal that I don't get any message at the prompt of the JMS when messages arrive to it?
I tried to make the same call through the ESB but without setting up all the security config to the proxy and it worked fine ("running client NO_SEC.txt" and "Axis2 log NO_SEC.txt").
What am I missing?
Thanks for your help!
Alejandra
PS: I did config the JCE, the only problem was that the changes I did were over the "jre1.6.0_07" folder instead of the one being used for this scenario ("jre1.5.0_16")...fool me! :P
Submitted by rbanavar on October 23, 2008 - 08:00.
Hi Alejandra,
You are facing the error message "org.apache.axis2.AxisFault: The input stream for an incoming message is null" because your client classes are outdated ever since you updated your JCE policy files. Try this:
1. Go to \samples\axis2Client\target\classes
2. Delete all the folders (4) below it.
3. Make sure you have the JCE unlimited strength policy files.
4. Invoke the Axis2Client:
ant stockquote -Dtrpurl=http://localhost:8280/soap/stock-quote-proxy.
Asankha would be of course be able to indicate if there is a different issue.
You can already connect to WMQ through JMS. We do not [yet] have a native MQ adapter, but if there are any issues specific to WMQ that cannot be satisfied with the JMS transport, we could consider it as an enhancement.
I'm attaching the synapse.xml and the output on the ESB(ESB output.txt).
The JMS provider I've been using is ActiveMQ 4.1.1. I also attach the startup of the JMS (ActiveMQ startup.txt)
Thanks again for your help with this!
Alejandra
PS: Ravi, I tried what you sugested. It worked fine recompiling the files, but the error stayed. All the same, thanks for getting interested and help me :)
I just want to tell you the short version...
I tried the changes you told me, but they didn't work. I kept reviewing and changing things I could have done wrong, but I ended up making WSO2ESB stop working; it said the Management console was disabled, that I should edit server.xml to change this. But in the file, I didn't find any field to enable. Besides when starting up, the console showed lots of errors... :S
After all this, I just erase wso2esb 1.7.1 folder, unzip it again, perform all the steps from the very beginig and now IT IS WORKING!! :D
Submitted by rbanavar on November 20, 2008 - 07:18.
Hello Asankha,
I'm back on the same topic with a couple more questions. Sorry to bug you with this !
1. When the proxy wsdl is created, the endpoint address url contains the port name. But in the screencast, the url doesnt have the port name in the suffix. I feel the port name suffix is not necessary. Can you take this out?
2. In the screencast, you say that you cannot see the jms endpoint in the proxy wsdl since you did not select the jms transport (listen screencast from 6:08 to 6:16). In the GUI, I see the transports as http, https. mailto and vfs, but I dont see jms. So there is no way we can expose the proxy over jms. Am I getting this correctly or am I missing something?
Submitted by asankha on November 20, 2008 - 08:29.
Hi Ravi
For #1, the endpoint was added for the last Axis2 release, and I think you can ignore it. For #2, you cannot enable the JMS transport over the UI - but only by manually editing the axis2.xml and a hard restart. This is the reason why you do not see it listed in the GUI. Hope this clears your doubts
I'm ussing WSO2 esb 2.1.0 with activemq 5.2 i'm tring to use JMS with the example included but i get the error "http://localhost:8280/services/StockQuoteProxyJMS" i have configured the axis2server example to use JMS and ]I don't get any error starting the server.
Submitted by haytham on September 7, 2009 - 09:52.
thank u my dear
دليل مواقع بنات مصر دليل مواقع يشمل مواقع مصرية , مواقع سعوديه , منتديات , مواقع اخباريه , وكالات انباء , صحف , والعديد من المواقع المفيده
دليل مواقع
مرحبا بكلم فى موقع العاب بنات مصر العاب للبنات فقط جديده , العاب بنات , العاب تلبيس , العاب تلوين , العاب باربي , العاب طبخ , العاب سيارات
العاب
العاب بنات جديده العاب للبنات متجدده بشكل يومي وحصريه
العاب بنات
ان كنتى تبحثي عن العاب بنات جديده ومنوعه بشكل يومي فيمكنك دخول موقع العاب بنات مصر
العاب بنات جديدة
هل انت من هواة المنتديات والمشاركة فى المنتديات شاركنا التميز فى منتدي منتديات بنات مصر
منتديات
تعرف على بنات مصر فى منتديات بنات مصر
بنات مصر
منتدي , مواضيع عامه , مواضيع مميزه , اسلاميات , قرأن كريم , صور , افلام , العاب , برامج
منتدي
حمل صورك فى مركز تحميل صور بنات مصر
تحميل صور
صور رومانسية , صور حب , صور بنات مصر , صور بنات جديده ,
صور
حمل صورك فى احلى مركز تحميل صور يمكنك تحميل 5 صور فى مره واحده
مركز تحميل
دردشة مصرية , تعارف فى احلي دردشة مصريه
دردشة مصرية
احلي موقع دردشة , دردشة مصرية , دردشة للبنات
دردشة
شات بنات دردشة بنات شات للبنات فقط
شات بنات
شات بنات مصر
شات بنات مصر
Quick question
Thanks for the excellent tutorial Asankha!
I did have one quick question -- If I were instead using PasswordDigest and wanted to validate the provided password, how would you suggest going about that?
For example, I'd like to validate the provided password, then strip off the WS-Security headers, such as in your example, and forward to a JMS queue.
Thanks,
jeff
Jeff My sincere apologies as
Jeff
My sincere apologies as I missed answering your question .. If you are still interested in an answer, you should be able to use a Rampart policy that enforces PasswordDigest, and then get it validated through Rampart. If you need a sample policy for this, let us know. The rest should be the same - i.e. stripping WS-Sec off
asankha
WSDL doesnt display JMS endpoint - ESB v1.7
Hello Asankha,
Thanks for the excellent and very useful tutorial.
A problem I am facing is that the WSDL for the service "SimpleStockQuoteService" is not displaying the JMS endpoint. I am following the instructions exactly like in your tutorial. All components start up ok, and I can see new queue "SimpleStockQuoteService" also being created by Axis. After building the service, I try to browse the WSDL for the JMS endpoint, and it is not available.
PS:
When I start up Axis 2 (after uncommenting the "JMS" section), I do observe that Axis does not recognize the SimpleStockQuoteService queue (even though it exists) and it seems to be creating the queue afresh.
-----------
2008-10-16 14:07:35,759 [-] [WrapperSimpleAppMain] WARN JMSConnectionFactory Cannot find destination : SimpleStockQuoteService. Creating a Queue
----------
Any thoughts on this issue ? Thank you!
Ravi Can you attach your
Ravi
Can you attach your axis2.xml, and the log file and I will get back to you. Also let me know the version of ActiveMQ you use
asankha
Attached logs and Axis2.xml
Asankha,
I have attached the Axis2.xml for your reference.
Also, here are the version numbers of the components:
a. ESB: v1.7 (using embedded Axis2 server)
b. ActiveMQ: v5.1.0
I also re-started ActiveMQ while Axis2 was running. Axis2 threw an exception saying no JMS is available. After re-starting ActiveMQ, Axis2 successfully re-connects. I have attached the corresponding log for that also.
Thanks for your help.
Ravi
Ravi Your axis2.xml looks
Ravi
Your axis2.xml looks ok.. and the log file shows that the SimpleStockQuoteService started listening on the JMS Queue named "SimpleStockQuoteService".. you should be able to see this on the ActiveMQ web or JMX consoles as well. The wso2-esb.log you sent seems similar to the sample server log? Does your example run successfully? i.e. can you bridge from http to JMS. You could set the log level to DEBUG on the log4,properties for the category "log4j.category.org.apache.synapse" (e.g. log4j.category.org.apache.synapse=DEBUG) to get more information
Also when you bridge from http to JMS, you should be able to see the message posted by the ESB to the JMS queue via ActiveMQ consoles mentioned above.. do you see them? or do you see two queues for SimpleStockQuoteService ? Can you attach a screen shot preferably of the AMQ JMX console view ?
asankha
Observations and snapshots
Asankha,
Thanks for your reply.
The example runs successfully when I use ESB version v1.6 and Active MQ version 4.1.1 (per tutorial). But the example does not run successfully when I use ESB version v1.7.1 and ActiveMQ version 5.1.0. I am stuck because the WSDL does not show me the JMS address location, which I need to create the endpoint on the ESB...That is the first difficulty.
I did browse through the JMX console. I have attached the snapshot of the AMQ JMX console.
Here are some observations:
1. When I start up the Axis2 server bundled with ESB v1.7.1, I can see the jms-listener for the SimpleStockQuoteService. The address is also correct. But WSDL doesnt show the JMS address. See jmx console snapshot for "apache-synapse" when running esbv1.7.1
2. When I start up the Axis2 server bundled with ESB v1.6, and open the JMX console, I dont see the "jms-listener" (see snapshot). But I can see the JMS address in the WSDL. See jmx console snapshot for "apache-synapse" when running esbv1.6
The issue seems to be with Axis2 creating the runtime WSDL.
Also, I tried one more thing. I started up AMQ v1.5 and Axis2Server bundled with esb1.6 and took the JMS address shown in the WSDL. Then I started up ESB v1.7.1, and tried to create an endpoint. It errored out saying the following:
[com.ctc.wstx.exc.WstxLazyException] com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'transport.jms.ConnectionFactoryJNDIName' at [row,col {unknown-source}]: [1,1007]
So, I did try different combinations to isolate the problem, but I am not able to reach a conclusion. Hopefully, you may have some clues!
Best regards,
Ravi
Hi Ravi Yes, there is a
Hi Ravi
Yes, there is a small issue with the 1.7.1 release sample service.. the work around for this is to uncomment the following line from
wso2esb-1.7.1/samples/axis2Server/src/SimpleStockQuoteService/build.xml
-->
Could you raise a JIRA for this issue at https://wso2.org/jira/browse/ESBJAVA, and we will fix it quickly
asankha
Which line can I uncomment....
Hi Asankha,
Thanks for the reply.
I think in your reply you missed the line which needed to uncomment. Appreciate if you can specify the same.
BTW, I copied over the build.xml from esb v1.6 and built the example in the esb v1.7.1 samples directory. When I bring up Axis2 (embedded in esb v1.7.1), I see the same problem.
In the meanwhile, I have raised a JIRA at the site you mentioned.
https://wso2.org/jira/browse/ESBJAVA-573
Thank you!
Ravi
Did you find out which line was it??
Hi Ravi,
I'm experimenting the exact same error you described before :(
I just found the JIRA you raised, but since it is still unresolved, I wanted to know if you could find which was the line Asankha was refering to.
Thank you for your time,
Alejandra
Hi Ravi The line is where
Hi Ravi
The line is where you copy the SimpleStockQuoteService.wsdl to META-INF
<copy file="wsdl/SimpleStockQuoteService.wsdl" tofile="${SSQ.dir}/META-INF/service.wsdl"/>
Extremely sorry, but the OxygenTank commented the XML I pasted since I had not been using the rich editor earlier :(
asankha
The line was never uncommented
Hi Asankha,
Appreciate your response.
Well, I looked at the build.xml in the directory:
C:\WSO2\wso2esb-1.7.1\samples\axis2Server\src\SimpleStockQuoteService and the line you mentioned is not commented.
I have attached the build.xml file (renamed it as txt so that my firewall doesnt strip it out) for your reference.
Thanks for your efforts!
Ravi
Ravi Please comment that
Ravi
Please comment that line.. or delete it and build the sample service and restart the sample axis2 server
asankha
WSDL works...shows JMS endpoint but.....
Hi Asankha,
Thanks for your reply. I modified the build.xml (commented the suggested line) and I can see the JMS endpoint in the WSDL.
Unfortunately, I am not able to create an endpoint in the the ESB v1.7.1 for the JMS endpoint. It errors out saying:
-------------
[com.ctc.wstx.exc.WstxLazyException] com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'transport.jms.ConnectionFactoryJNDIName' at [row,col {unknown-source}]: [1,1007]
-------------
I saw a JIRA for this issue being raied for a previous version. Looks like the issue has cropped up again.
Would appreciate if you can suggest a remedy for this.
I have reported this error message in the JIRA I raised. Let me know if a seperate JIRA is required for this and I can raise it.
Many thanks and regards
Ravi
Hi Ravi Please escape the
Hi Ravi
Please escape the URL as follows:
jms:/SimpleStockQuoteService?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&java.naming.provider.url=tcp://localhost:61616&transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory
asankha
endpoint created successfully.
Asankha,
Thanks for your help. I could successfully create an endpoint by escaping "&".
I also tried out the example by firing a SOAP request to the HTTP endpoint and it successfully mediated between HTTP and JMS.
I did get a warning on the Axis2 console which looks like:
--------
Tue Oct 21 15:25:23 EDT 2008 samples.services.SimpleStockQuoteService :: Generating quote for : IBM 2008-10-21 15:25:23,530 [-] [jms-Worker-5] WARN JMSConnectionFactory Error looking up destination for JNDI name : temp-queue://ID:sdg10071tdbd1-3030-1224615871250-1:4:1
--------
I guess the temp-queue gets destroyed after the response is fed into the ESB, so Axis2 cribs that it cannot find the temp-queue later. But I would appreciate your answer on this.
I assume you will be incorporating the two changes (1. commenting the line in the WSDL and 2. escaping "&") with the next minor version of the code. Let me know if I should close the JIRA or will WSO2 close it.
My next step will be to build a ws-policy file in order to secure the messages like shown in the tutorial. Would it be possible to post the sample ws-policy file on this page so we can use it as a reference?
Another related question (sorry I am tagging too many questions!)
I am using ws-addressing to send the response to a remote endpoint. When I examine the arrival message at the remote endpoint, I see a bunch of JMS headers, which makes the remote endpoint aware of the inner transport. Is it possible to suppress the JMS headers in the response ?
Best regards and appreciation for the efforts!
Ravi
Hi Ravi >I did get a warning
Hi Ravi
>I did get a warning on the Axis2 console which looks like:
>--------
>Tue Oct 21 15:25:23 EDT 2008 >samples.services.SimpleStockQuoteService :: Generating >quote for : IBM 2008-10-21 15:25:23,530 [-] [jms-Worker-5] >WARN JMSConnectionFactory Error looking up destination for >JNDI name : temp-queue://ID:sdg10071tdbd1-3030-1224615871250-1:4:1
>--------
>I guess the temp-queue gets destroyed after the response >is fed into the ESB, so Axis2 cribs that it cannot find >the temp-queue later. But I would appreciate your answer >on this.
Yes, the temp queue gets deleted soon after. Anyway a temp queue is accessible only via the connection that created it, and by the recipient. The warning is a generic warning, and can be safely ignored
>I assume you will be incorporating the two changes (1. >commenting the line in the WSDL and 2. escaping "&") with >the next minor version of the code.
Yes, we will
>Let me know if I should close the JIRA or will WSO2 close it.
WSO2 QA team will close it after verification with the next release
>Would it be possible to post the sample ws-policy file on this page so we can use it as a reference?
attached as ws-policy.xml
Also note that the security header to remove is wsse:Security, where wsse refers to the http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd namespace
>When I examine the arrival message at the remote endpoint, >I see a bunch of JMS headers, which makes the remote >endpoint aware of the inner transport. Is it possible to >suppress the JMS headers in the response ?
Since the final transport is JMS, there will be some core JMS headers present anyway.. however if you see any HTTP headers etc which got propagated, you could use the property mediator, and "remove" the header by selecting the scope as "transport"
i.e. <property name="string" [action=set|remove] (value="literal" | expression="xpath") [scope=transport|axis2|axis2-client]/>
asankha
Running client - Error during encryption
Hi Asankha,
As you might think from my previous message, like Ravi, I've also being trying to follow your steps, but I'm having some trouble after setting the WS-Security policy to the proxy.
But first of all, Ravi's questions, as well as your prompt answers have being incredibly helpful (since I've experienced the same problems). Thank you both!
Going back to my question, first, I saw in your presentation, that the policy you set up, was based on Sample 03 from Rampart's samples, so I tried setting that policy up in the "Log Registry". I got some Null point errors when running the client, so after taking a closer look, I saw that when you were calling the client, the -Dpolicy was "./../../repository/conf/sample/resources/policy/client_policy_3.xml". When I followed that path, to my surprise, there was the policy you attached in the previous answer, named "policy_3.xml", as well as the client policy ("client_policy_3.xml")! :)
I'm not quite familiarized with WS-Security policies nor Rampart, so I might be making some mistake I can't see. But if you could take a look at the attached file ("running client.txt"); from the second I set up the WS-Security policy into the proxy, even before setting the filter to take out the header, I get the attached error message.
I also attach what the ESB Console shows under "Manage > Configuration", in case it helps ("proxy setup.xml" and "sec-policy setup.xml").
Just for you to know, before setting up the Security policy (meaning, raw client-ESB-JMS-Server comunication), the request made by the client worked fine.
For what I see, is like the client policy is not working..? I attached the client policy file I am using as well, just in case... ("client_policy_3.xml")
So, I couldn't go any further from this point, no matter the many attempts I made. But being so close, I really want to see this scenario working.
Thank you for your time and patience!
Alejandra
Hi Alejandra Glad to hear
Hi Alejandra
Glad to hear that the forums have been helpful.. as for the problem you are seeing
[java] Original Exception was java.security.InvalidKeyException: Illegal key size or default parameters
.. its because you haven't applied the unlimited strength policy files for your JDK to use large key sizes for encryption. This is listed in the initial slides as:
JDK 1.5.x
- Set JAVA_HOME, and add JDK to Path
- Install unlimited strength crypto policy files
To solve this, go to http://java.sun.com/javase/downloads/index_jdk5.jsp and download and install the "Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0"
asankha
Hi Asankha, Thanks very much
Hi Asankha,
Thanks very much for your reply.
I have been held up with a few other tasks so I couldnt test out the ws-security implementation. Looks like Alejandra has been able to progress further. I will test the policy out and let you know my observations.
With best regards
Ravi
Error using Axis2Client
Hello Asankha,
This might sound trivial but..
I did observe an issue with Axis2Client. All the while I have been using SOAPUI to fire SOAP requests to the web service. I am trying to use the Axis2Client for trying out the tutorial, and it errors out.
-----------------------
C:\WSO2\wso2esb-1.7.1\samples\axis2Client>ant stockquote -Dtrpurl=http://localhost:9000/soap/SimpleStockQuoteService
Buildfile: build.xml
init:
compile:
stockquote:
[java] 13:03:07,738 [main] INFO DeploymentEngine - No services directory was found under C:\WSO2\wso2esb-1.7.1\samples\axis2
Client\client_repo.
[java] 13:03:07,863 [main] INFO ModuleDeployer - Deploying module: addressing - file:/C:/WSO2/wso2esb-1.7.1/samples/axis2Cli
ent/client_repo/modules/addressing.mar
[java] 13:03:07,926 [main] INFO ModuleDeployer - Deploying module: Mercury - file:/C:/WSO2/wso2esb-1.7.1/samples/axis2Client
/client_repo/modules/mercury-mar.mar
[java] 13:03:07,973 [main] INFO ModuleDeployer - Deploying module: rampart - file:/C:/WSO2/wso2esb-1.7.1/samples/axis2Client
/client_repo/modules/rampart.mar
[java] 13:03:08,004 [main] INFO ModuleDeployer - Deploying module: metadataExchange - file:/C:WSO2/wso2esb-1.7.1/webapp/WEB
-INF/lib/mex-1.4-impl.jar
[java] 13:03:08,098 [main] INFO JMSSender - JMS Sender started
[java] org.apache.axis2.AxisFault: namespace mismatch require http://services.samples found http://services.samples/xsd
[java] at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:512)
[java] at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:370)
[java] at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
[java] at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
[java] at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
[java] at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:548)
[java] at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:528)
[java] at samples.userguide.StockQuoteClient.executeClient(Unknown Source)
[java] at samples.userguide.StockQuoteClient.main(Unknown Source)
BUILD SUCCESSFUL
Total time: 1 second
-----------------------
Example responds perfectly well with SOAP UI.
Observations
1. Looks like a folder "services" is missing in the release 1.7.1 under the Axis2Client\client_repo.
2. Even when I try the example without JMS enabled, the client still says "JMS sender started"
Any clues to this ?
Many thanks!
Ravi B
Hi Ravi The issue you are
Hi Ravi
The issue you are seeing now is because we commented out the WSDL shipped with the sample service we deployed on the sample server to get over the initial JMS issue. The sample client is hard coded to a specific namespace, and without the WSDL, the service defaults to a different name space
[java] org.apache.axis2.AxisFault: namespace mismatch require http://services.samples found http://services.samples/xsd
The rest of the issues are ignorable warnings, since this is a simple client, and thus we do not have any services deployed on it (i.e. usually services are deployed on the server side) and the JMS sender starting means that if the client wishes to send out a message over JMS it would be supported - i.e. provided that the JMS URL is correct and necessary JARs are made available on the client side
I will check with the others on why the JMS URL was not showed on the sample Axis2 server to fix our root cause..
asankha
Error using Axis2 - input stream for an incoming message is nu
Hi Asankha,
Sorry to bother you again, but I'm having a new issue...
The request I'm making isn't reaching the Axis2! :(
The message error says: [java] org.apache.axis2.AxisFault: The input stream for an incoming
message is null. ("running client SEC.txt").
When look to Axis2's prompt, there is no activity. Apart from that, is it normal that I don't get any message at the prompt of the JMS when messages arrive to it?
I tried to make the same call through the ESB but without setting up all the security config to the proxy and it worked fine ("running client NO_SEC.txt" and "Axis2 log NO_SEC.txt").
What am I missing?
Thanks for your help!
Alejandra
PS: I did config the JCE, the only problem was that the changes I did were over the "jre1.6.0_07" folder instead of the one being used for this scenario ("jre1.5.0_16")...fool me! :P
Hi Alejandra Can you attach
Hi Alejandra
Can you attach your synapse.xml as well, and any output you see on the ESB. Also, what is the JMS provider you are using?
asankha
Problem is with outdated client classes
Hi Alejandra,
You are facing the error message "org.apache.axis2.AxisFault: The input stream for an incoming message is null" because your client classes are outdated ever since you updated your JCE policy files. Try this:
1. Go to \samples\axis2Client\target\classes
2. Delete all the folders (4) below it.
3. Make sure you have the JCE unlimited strength policy files.
4. Invoke the Axis2Client:
ant stockquote -Dtrpurl=http://localhost:8280/soap/stock-quote-proxy.
Asankha would be of course be able to indicate if there is a different issue.
Regards
Ravi
Example works successfully
Asankha,
Thanks very much for your help. The example works good with the ws-security. The tutorial is very helpful and is a realistic use case.
Question.
Is WSO2 ESB planning to bring in a WMQ adapter ?
Best Regards and much appreciation for your efforts!
RaviB
Hi Ravi You can already
Hi Ravi
You can already connect to WMQ through JMS. We do not [yet] have a native MQ adapter, but if there are any issues specific to WMQ that cannot be satisfied with the JMS transport, we could consider it as an enhancement.
asankha
Attachments
Hi Ashanka,
I'm attaching the synapse.xml and the output on the ESB(ESB output.txt).
The JMS provider I've been using is ActiveMQ 4.1.1. I also attach the startup of the JMS (ActiveMQ startup.txt)
Thanks again for your help with this!
Alejandra
PS: Ravi, I tried what you sugested. It worked fine recompiling the files, but the error stayed. All the same, thanks for getting interested and help me :)
Hi Alejandra I tried your
Hi Alejandra
I tried your configuration, but the wsse:Security namespace you have used is incorrect, and it should be :
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
Also, note that your proxy is named "StorkeQuoteSECUREProxy"
So you need to invoke the client as :
ant stockquote -Dtrpurl=http://asankha:8280/soap/StorkeQuoteSECUREProxy -Dpolicy=./../../repository/conf/sample/resources/policy/client_policy_3.xml
With these changes, I was able to run the sample with AMQ 4.1.1 and ESB 1.7.1 just now
asankha
Finally it worked! :)
Well Asankha, I finally could see it working
Thanks for your time, patience and effort!
I just want to tell you the short version...
I tried the changes you told me, but they didn't work. I kept reviewing and changing things I could have done wrong, but I ended up making WSO2ESB stop working; it said the Management console was disabled, that I should edit server.xml to change this. But in the file, I didn't find any field to enable. Besides when starting up, the console showed lots of errors... :S
After all this, I just erase wso2esb 1.7.1 folder, unzip it again, perform all the steps from the very beginig and now IT IS WORKING!! :D
Again, thanks for all your help!
Alejandra
Hi Alejandra Good to hear
Hi Alejandra
Good to hear that you got it working :)
asankha
Proxy WSDL - Observations and clarification
Hello Asankha,
I'm back on the same topic with a couple more questions. Sorry to bug you with this !
1. When the proxy wsdl is created, the endpoint address url contains the port name. But in the screencast, the url doesnt have the port name in the suffix. I feel the port name suffix is not necessary. Can you take this out?
2. In the screencast, you say that you cannot see the jms endpoint in the proxy wsdl since you did not select the jms transport (listen screencast from 6:08 to 6:16). In the GUI, I see the transports as http, https. mailto and vfs, but I dont see jms. So there is no way we can expose the proxy over jms. Am I getting this correctly or am I missing something?
Thanks!
Ravi B
Hi Ravi For #1, the endpoint
Hi Ravi
For #1, the endpoint was added for the last Axis2 release, and I think you can ignore it. For #2, you cannot enable the JMS transport over the UI - but only by manually editing the axis2.xml and a hard restart. This is the reason why you do not see it listed in the GUI. Hope this clears your doubts
asankha
http://esbmagic.blogspot.com
New Question
Hi Asankha,
I'm ussing WSO2 esb 2.1.0 with activemq 5.2 i'm tring to use JMS with the example included but i get the error "http://localhost:8280/services/StockQuoteProxyJMS" i have configured the axis2server example to use JMS and ]I don't get any error starting the server.
Regards,
Julio
thank u my dear دليل
thank u my dear
دليل مواقع بنات مصر دليل مواقع يشمل مواقع مصرية , مواقع سعوديه , منتديات , مواقع اخباريه , وكالات انباء , صحف , والعديد من المواقع المفيده
دليل مواقع
مرحبا بكلم فى موقع العاب بنات مصر العاب للبنات فقط جديده , العاب بنات , العاب تلبيس , العاب تلوين , العاب باربي , العاب طبخ , العاب سيارات
العاب
العاب بنات جديده العاب للبنات متجدده بشكل يومي وحصريه
العاب بنات
ان كنتى تبحثي عن العاب بنات جديده ومنوعه بشكل يومي فيمكنك دخول موقع العاب بنات مصر
العاب بنات جديدة
هل انت من هواة المنتديات والمشاركة فى المنتديات شاركنا التميز فى منتدي منتديات بنات مصر
منتديات
تعرف على بنات مصر فى منتديات بنات مصر
بنات مصر
منتدي , مواضيع عامه , مواضيع مميزه , اسلاميات , قرأن كريم , صور , افلام , العاب , برامج
منتدي
حمل صورك فى مركز تحميل صور بنات مصر
تحميل صور
صور رومانسية , صور حب , صور بنات مصر , صور بنات جديده ,
صور
حمل صورك فى احلى مركز تحميل صور يمكنك تحميل 5 صور فى مره واحده
مركز تحميل
دردشة مصرية , تعارف فى احلي دردشة مصريه
دردشة مصرية
احلي موقع دردشة , دردشة مصرية , دردشة للبنات
دردشة
شات بنات دردشة بنات شات للبنات فقط
شات بنات
شات بنات مصر
شات بنات مصر
.............................
.........................................................
منتدى
شبكة منتدانا
منتدانا
دليل عربى
الدليل العربى
دليل المواقع العربية
دليل
الكتب
الإسلامية
الصوتيات الإسلامية
مواقع
الأخبار العربيه
الصحف
السعوديه
الصحف
الكويتيه
الصحف
المصريه
الصحف
العربيه
لغات
البرمجه وقواعد البيانات
الأمن
والحمايه
طب
الأسنان
أمراض
نفسية
منتديات إسلاميه
منتديات اقتصاديه
منتديات سياسيه
منتديات البرمجه
اضف موقعك
عرض الأقسام
برامج الماسنجر
صور رمزية
تحميل ماسنجر
الاستضافة
استضافة مجانية
الاستضافة المدفوعة
العاب رياضية
العاب ذكاء
العاب باربي
العاب سيارات
سوليتير
مكياج الزفاف
مباراة
مصر والجزائر
اهداف
مباراة مصر والجزائر
مصر
والجزائر