RE: adding MTOM/SwA functionality
Jeff, I just found this website: http://www.w3.org/2000/xp/Group/4/08/implementation.html Which has implantation examples for MTOM. It shows what the request and response look like. Hope this helps. -Ryan -Original Message- From: Jeff Ramin [mailto:jeff.ra...@singlewire.com] Sent: Thursday, August 27, 2009 2:34 PM To: axis-user@ws.apache.org Subject: adding MTOM/SwA functionality Hi folks. I have an existing SOAP service, and I want to add the ability to receive binary data (an audio file). The code is hand written; not auto-generated. So, if I have an existing method such as: public void doSomething(String someParam) and I want to also receive an audio file, what would the new signature look like?: public void doSomething(String someParam, audioFile) Thanks! -- Jeff Ramin Software Engineer Singlewire Software PO Box 46218 Madison, WI 53744-6218 Phone Direct - 608.298.1024 www.singlewire.com
RE: Problems building Axis C++ with ant
Is it possible for you to try building it with VS6? Do you have IPV6 defined? Do you need it? It looks like both of the link errors you are receiving are from a chunk of code in a #ifdef IPV6. http://svn.apache.org/repos/asf/webservices/axis/trunk/c/src/transport/axis3/HTTPChannel/HTTPChannel.cpp Search for getaddrinfo freeaddrinfo and you will see what I mean. -Ryan From: Felipe Armoni, felipe.armoni [mailto:farm...@itautec.com] Sent: Friday, July 24, 2009 8:55 AM To: axis-c-user@ws.apache.org Subject: ENC: Problems building Axis C++ with ant Hi, I have downloaded the latest axis C++ source from Apache's SVN repository (http://svn.apache.org/repos/asf/webservices/axis/trunk/c/) and I am trying to build it using ant and Visual Studio 2008 (my OS is Windows XP Professional). Also please note that I am only interested on the client side part of the API, so I've set the properties server.apache13 and server.apache20 to false and didn't set the environment variables APACHE_HOME and APACHE2_HOME. The output from my ant build is attached to this message. How can I solve this problem? What am I doing wrong? Thanks, Felipe Armoni Analista de Sistemas. [cid:image001.png@01CA0C45.B6086280] | Sw Segurança * (55 11) 3543-2306| * farm...@itautec.commailto:farm...@itautec.com inline: image001.png
Question about nillable=true and minOccurs=0
If you have an element on a complexType that has nillable=true and minOccurs=0, will the element be de-serialized if the property on the soap stub is set to null? For instance, let's say a portion of your XSD looks like this: xs:complexType name=point xs:sequence xs:element name=x type=xs:int nillable=true minOccurs=0 maxOccurs=1 / xs:element name=y type=xs:int nillable=true minOccurs=0 maxOccurs=1 / /xs:sequence /xs:complexType If in your generated soap stub object you set x = null and y = 20, will the de-serialized xml look like this: point x xsi:nil=true / y20/y /point I know that Axis 1.4 (not Axis2) will not de-serialize the element when it is set to null and has minOccurs=0. If need be I can dig up the specific code where this happens. The question I have is if Axis2 also behaves this way? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/
RE: Question about nillable=true and minOccurs=0
Thanks for the quick reply. From: keith chapman [mailto:keithgchap...@gmail.com] Sent: Friday, April 24, 2009 10:22 AM To: axis-user@ws.apache.org Subject: Re: Question about nillable=true and minOccurs=0 Yes it behaves in the same manner. Thanks, Keith. On Fri, Apr 24, 2009 at 9:27 PM, McCullough, Ryan rmccullo...@rightnow.commailto:rmccullo...@rightnow.com wrote: If you have an element on a complexType that has nillable=true and minOccurs=0, will the element be de-serialized if the property on the soap stub is set to null? For instance, let's say a portion of your XSD looks like this: xs:complexType name=point xs:sequence xs:element name=x type=xs:int nillable=true minOccurs=0 maxOccurs=1 / xs:element name=y type=xs:int nillable=true minOccurs=0 maxOccurs=1 / /xs:sequence /xs:complexType If in your generated soap stub object you set x = null and y = 20, will the de-serialized xml look like this: point x xsi:nil=true / y20/y /point I know that Axis 1.4 (not Axis2) will not de-serialize the element when it is set to null and has minOccurs=0. If need be I can dig up the specific code where this happens. The question I have is if Axis2 also behaves this way? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/ -- Keith Chapman Senior Software Engineer WSO2 Inc. Oxygenating the Web Service Platform. http://wso2.org/ blog: http://www.keith-chapman.org
RE: is someone using axis-c web services in production ?
I do not use the server side of Axis C++ (not Axis2 C++), but I will say that 1.5 is very old. You will want to get the code from the subversion repository. It is much more stable than 1.5 or 1.6 beta. At least this has been our experience with the client. -Ryan From: Philippe Torrelli [mailto:philippe.torre...@alcatel-lucent.fr] Sent: Friday, February 27, 2009 1:36 AM To: axis-c-user@ws.apache.org Subject: is someone using axis-c web services in production ? Hello, I tried to test axis-C 1.5.0 that we planned to rely on to deploy C (++) web services, to find out that the httpd server crashes very often, even with sample services .. ( most of the time in calls to free ) . It doesn't seem to be a problem when using the apache module, but the module forks a new process when it handles a call to a web service, which is not efficient enough for the hardware on which we planned to host these services, and also prevents us to for example share a pool of connections to our data base among our .so ... Is there a stable and working http transport available, or are people out there just using the apache module ? or using axis-c only to call Web services ? A very easy way to reproduce is to download and install the binary release, use soapui to send bursts of calls to the 'echo server', the http transport very soon crashes. I used the very default parameters, tried using rest as well as soap action mapping.. I had the same kind of results using a recent svn version that I recompiled. Anyone has success with deploying web services in production with axis C ? TIA Philippe.
RE: compiling Axis C++ on Darwin
The Axis C++ ant build requires ant-contrib the cpptasks extension: http://ant-contrib.sourceforge.net/cpptasks/index.html -Ryan -Original Message- From: virtan [mailto:vir...@virtan.com] Sent: Tuesday, February 10, 2009 2:31 PM To: Apache AXIS C User List Subject: Re: compiling Axis C++ on Darwin On 09.01.2009, at 3:43, Nadir Amra wrote: We do not use autogen process to build the stuff. We use ant. That is more platform-ignostic. Your INSTALL opposes you. Where can I find instructions to build axis C++ with ant ? Just run isn't working: [vir...@king ~/Projects/***/axis] ant Buildfile: build.xml [taskdef] Could not load definitions from resource cpptasks.tasks. It could not be found. [typedef] Could not load definitions from resource cpptasks.types. It could not be found. [taskdef] Could not load definitions from resource net/sf/ antcontrib/antcontrib.properties. It could not be found. BUILD FAILED /Volumes/Projects/***/axis/build.xml:39: The following error occurred while executing this line: /Volumes/Projects/***/axis/build/buildInitialize.xml:43: Problem: failed to create task or type compiler Cause: The name is undefined. Action: Check the spelling. Action: Check that any custom tasks/types have been declared. Action: Check that any presetdef/macrodef declarations have taken place. Total time: 0 seconds Nadir Amra virtan vir...@virtan.com wrote on 01/08/2009 05:08:20 PM: [image removed] compiling Axis C++ on Darwin virtan to: Apache AXIS C User List 01/08/2009 05:15 PM Please respond to Apache AXIS C User List The problems I've got compiling Axis C++ on Darwin. 1. It's difficult to find svn location of Axis C++ The link to more recent version of Axis C++ at http:// ws.apache.org/axis/cpp/download.html points to http://ws.apache.org/axis/cpp/axis/interim.html which gives 404. SVN Repository page of Axis at http://ws.apache.org/axis/cvs.html points to java version only. To locate C/C++ path I had to investigate: [vir...@king ~/tmp] svn ls http://svn.apache.org/repos/asf/ webservices/axis/trunk/ svn co README addons/ c/ contrib/ java/ proposals/ site/ [vir...@king ~/tmp] svn co http://svn.apache.org/repos/asf/ webservices/axis/trunk/c axis-c -q [vir...@king ~/tmp] 2. No configure After defining AXISCPP_HOME, AXISCPP_DEPLOY and LD_LIBRARY_PATH I found no configure at the root of sources. Just autogen.sh, so I have to have autotools installed. 3. Incomplete sources Autogen.sh doesn't create Makefile.in templates because of lack of tests and samples: [vir...@king ~/tmp/axis-c] ./autogen.sh run libtoolize. You should add the contents of `/sw/share/aclocal/libtool.m4' to `aclocal.m4'. run aclocal. run autoconf. run autoheader. run automake. samples/server/Makefile.am:1: required directory samples/server/ interoptests does not exist samples/server/Makefile.am:1: required directory samples/server/ simple does not exist configure.ac:296: required file `src/transport/axis2/Makefile.in' not found configure.ac:296: required file `src/transport/axis2/ssl/Makefile.in' not found configure.ac:296: required file `src/transport/axis2/ipv6/ Makefile.in' not found configure.ac:296: required file `samples/Makefile.in' not found configure.ac:296: required file `samples/server/interoptests/ Makefile.in' not found many not found errors skipped configure.ac:296: required file `tests/Makefile.in' not found configure.ac:296: required file `tests/unit_tests/Makefile.in' not found many not found errors skipped Here is only one method to pass this step: remove corresponded lines from configure.ac [vir...@king ~/tmp/axis-c] diff -u configure.ac.orig configure.ac | wc -l 97 [vir...@king ~/tmp/axis-c] diff -u configure.ac.orig configure.ac | grep ^- -c 84 [vir...@king ~/tmp/axis-c] ls -l Makefile.in -rw-r--r-- 1 virtan staff 21932 9 янв 02:05 Makefile.in 4. /* to be continued */ -- virtan / vir...@virtan.com / http://www.virtan.com -- virtan / vir...@virtan.com / http://www.virtan.com
RE: SSL tunnel (https through proxy)
I got this working. I needed to sent the CONNECT host:port HTTP/1.1\r\n to the proxy server un-encrypted and then read the un-encrypted HTTP 200 OK response. After that, a tunnel is established to host:port and you can send the ssl handshake and then the encrypted data. -Ryan From: McCullough, Ryan [mailto:rmccullo...@rightnow.com] Sent: Thursday, February 05, 2009 11:11 AM To: axis-user@ws.apache.org Subject: SSL tunnel (https through proxy) I am trying to add the ability to do SSL tunneling through a proxy server to Axis1 C++. I was curious how this works. I did find some reference works by Ari Luotonen from 1995 and 1998. http://muffin.doit.org/docs/rfc/tunneling_ssl.html http://www.web-cache.com/Writings/Internet-Drafts/draft-luotonen-web-proxy-tunneling-01.txt http://www.w3.org/Daemon/User/Patch/SSL.patch It looks like you need to send an HTTP 'CONNECT host:port HTTP/1.1\r\n' un-encrypted. The question I have is if the ssl encrypted request follow this http header in the request or if it is a separate request. I guess what I am looking for is what requests are necessary and what the content should be. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/
[no subject]
Do I need to be worried about the attached message? My email admin said: 553-Message filtered The error message indicates that your email was blocked as spam by our Signaturing anti-spam filter. Please try the following steps to resolve the issue: I. Check if your sending IP is on any black lists. A good place to check this ishttp://www.dnsstuff.com. This will be able to show any 3rd party lists that may have received spam from your mail server. If your IP address is on any block lists, please request for removal, wait 24 hours and then try to resend your email. II. Ensure your mail server is not open relay - http://www.abuse.net/relay.html. III. If your internet line is provided by DSL or Cable that shares IP's with residential users, please ensure your mail server sends to your ISP's smart host instead of direct to the internet. This reduces the potential of your email as being detected in error as coming from a Trojan infected home user machine. IV. Ensure the email you are sending does not contain any spam content (i.e. forwarded spam or 'spamvertised' URL's). V. Ensure your mail server is configured correctly. VI. Ensure you have no virus infected machines on your network that are being used to send spam through your mail server. VII. Ensure you have no exploitable web scripts on your web servers that could be abused to send spam. The most commonly used one is PHP contact scripts which spammers can easily abuse the PHP mail() function to send what they want. VIII. Make sure any 'opt-in' newsletters contain an 'opt-out' link to be certain users can easily unsubscribe. If the problem persists, please contact the recipient by other means (e.g. fax or phone) and request that your email address be added to their approved senders list through the MessageLabs ClientNet Web portal. Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/ ---BeginMessage--- Hi! This is the ezmlm program. I'm managing the axis-user@ws.apache.org mailing list. Messages to you from the axis-user mailing list seem to have been bouncing. I've attached a copy of the first bounce message I received. If this message bounces too, I will send you a probe. If the probe bounces, I will remove your address from the axis-user mailing list, without further notice. I've kept a list of which messages from the axis-user mailing list have bounced from your address. Copies of these messages may be in the archive. To retrieve a set of messages 123-145 (a maximum of 100 per request), send a short message to: axis-user-get.123_...@ws.apache.org To receive a subject and author list for the last 100 or so messages, send a short message to: axis-user-in...@ws.apache.org Here are the message numbers: 77311 --- Enclosed is a copy of the bounce message I received. Return-Path: Received: (qmail 77980 invoked for bounce); 24 Jan 2009 01:26:37 - Date: 24 Jan 2009 01:26:37 - From: mailer-dae...@apache.org To: axis-user-return-773...@ws.apache.org Subject: failure notice Hi. This is the qmail-send program at apache.org. I'm afraid I wasn't able to deliver your message to the following addresses. This is a permanent error; I've given up. Sorry it didn't work out. rmccullo...@rightnow.com: 216.82.254.243 failed after I sent the message. Remote host said: 553-Message filtered. Please see the FAQs section on spam 553-at http://www.messagelabs.com/support/ for more 553 information. (#5.7.1) ---End Message---
RE: How to get a value from SOAP header using Axis C++?
Are you using Axis2/c? or Axis c++? From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 2:50 PM To: axis-c-user@ws.apache.org Subject: How to get a value from SOAP header using Axis C++? My apps server needs to talk to Informatica WS. It sends a session ID in the header which should be retrieved and used in all their requests. How can I get this value from a SOAP header? Vassilli Golikov Equity Derivatives IT Credit Suisse Securities (USA) LLC One Madison Avenue 10th Floor New York, NY 10010 212-325-8972 (Tel) Email: vassili.goli...@credit-suisse.com == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ==
RE: How to get a value from SOAP header using Axis C++?
We had a similar issue. We resolved it by modifying the source code and compiling our own Axis binaries. Add the following axis\include\axis\client\Call.hpp: /** * Returns the DeSerialized response header. */ IHeaderBlock* getDeSerHeaderBlock(const AxisChar * pName, const AxisChar * pNamespace); axis\src\engine\client\Call.cpp IHeaderBlock* Call::getDeSerHeaderBlock(const AxisChar * pName, const AxisChar * pNamespace) { if (m_pIWSDZ != NULL) { return m_pIWSDZ-getHeaderBlock(pName, pNamespace, false); } else { return NULL; } } axis\src\soap\SoapDeSerializer.h IHeaderBlock* getHeaderBlock(const AxisChar* pName, const AxisChar* pNamespace, bool bRemoveOrNot); axis\src\soap\SoapDeSerializer.cpp /* * Header block parsing should be done differently for different SOAP versions. * Since the Header blocks may be requested in a different order than it is in * the SOAP stream there must be a mechanism to manage the situation. Possibly * to re-parse the stream part which has unused header blocks. */ IHeaderBlock *SoapDeSerializer:: getHeaderBlock (const AxisChar * pName, const AxisChar * pNamespace, bool bRemoveOrNot) { // if no Header element there can be no Header blocks if (!m_pHeader) return NULL; return m_pHeader-getHeaderBlock (pName, pNamespace, bRemoveOrNot); } -Ryan From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 3:05 PM To: Apache AXIS C User List Subject: RE: How to get a value from SOAP header using Axis C++? C++. This is actual response from PowerCenter: 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:Header ns1:Context soapenv:actor= soapenv:mustUnderstand=0 xmlns:ns1=http://www.informatica.com/wsh; SessionId1d2b79bbe22efa2011f4cf3a9db/SessionId /ns1:Context /soapenv:Header soapenv:Body LoginReturn xmlns=http://www.informatica.com/wsh;1d2b79bbe22efa2011f4cf3a9db/LoginReturn /soapenv:Body /soapenv:Envelope Session ID is mentioned in two places. In the header: SessionId1d2b79bbe22efa2011f4cf3a9db/SessionId and in the body LoginReturn xmlns=http://www.informatica.com/wsh;1d2b79bbe22efa2011f4cf3a9db/LoginReturn Could you tell me how to get that Session Id and re-submit in another header? E.g. soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:Header ns0:Context xmlns:ns0=http://www.informatica.com/wsh; SessionId[string]/SessionId /ns0:Context /soap:Header soap:Body ns0:GetWorkflowLog xmlns:ns0=http://www.informatica.com/wsh; DIServiceInfo DomainName[string]/DomainName ServiceName[string]/ServiceName /DIServiceInfo FolderName[string]/FolderName WorkflowName[string]/WorkflowName WorkflowRunId[int]/WorkflowRunId WorkflowRunInstanceName[string]/WorkflowRunInstanceName Timeout[int]/Timeout /ns0:GetWorkflowLog /soap:Body /soap:Envelope Session ID should be here ns0:Context xmlns:ns0=http://www.informatica.com/wsh; SessionId[string]/SessionId /ns0:Context From: McCullough, Ryan [mailto:rmccullo...@rightnow.com] Sent: Friday, February 06, 2009 4:59 PM To: Apache AXIS C User List Subject: RE: How to get a value from SOAP header using Axis C++? Are you using Axis2/c? or Axis c++? From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 2:50 PM To: axis-c-user@ws.apache.org Subject: How to get a value from SOAP header using Axis C++? My apps server needs to talk to Informatica WS. It sends a session ID in the header which should be retrieved and used in all their requests. How can I get this value from a SOAP header? Vassilli Golikov Equity Derivatives IT Credit Suisse Securities (USA) LLC One Madison Avenue 10th Floor New York, NY 10010 212-325-8972 (Tel) Email: vassili.goli...@credit-suisse.com == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html == == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ==
RE: Axis C++ 1.6 client app connecting using https through http proxy
I think I have a working solution. Klitos, would you be willing to test my changes? Do you need Axis binaries or source code? Nadir, if Klitos reports that my changes work, how can I go about getting these changes included in the project? -Ryan -Original Message- From: Klitos Kyriacou [mailto:klitos.kyria...@gmail.com] Sent: Thursday, February 05, 2009 3:36 AM To: Apache AXIS C User List Subject: Re: Axis C++ 1.6 client app connecting using https through http proxy Thanks! That issue seems to have been open for two years. Hopefully, your useful test report will help to move things on. Klitos
SSL tunnel (https through proxy)
I am trying to add the ability to do SSL tunneling through a proxy server to Axis1 C++. I was curious how this works. I did find some reference works by Ari Luotonen from 1995 and 1998. http://muffin.doit.org/docs/rfc/tunneling_ssl.html http://www.web-cache.com/Writings/Internet-Drafts/draft-luotonen-web-proxy-tunneling-01.txt http://www.w3.org/Daemon/User/Patch/SSL.patch It looks like you need to send an HTTP 'CONNECT host:port HTTP/1.1\r\n' un-encrypted. The question I have is if the ssl encrypted request follow this http header in the request or if it is a separate request. I guess what I am looking for is what requests are necessary and what the content should be. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/
Axis with UTF-8
We are using Axis1 checked out from subversion along with Xerces-C Version 2.2.0. We are having trouble using Axis to retrieve UTF-8 characters. Is there any additional setup needed? Here is where we think things are going arye. axis\xml\xerces\XMLParserXerces.cpp::parse(bool ignoreWhitespace, bool peekIt) About line 125 there is this: // parse next token m_bCanParseMore = m_pParser-parseNext(m_ScanToken); It looks like the parseNext() function is converting 3 bytes of Unicode characters to 1 byte. Here is the hex data being returned from our web service: 0808h: EF A4 85; ï¤... I have also attached the xml that was returned from the web service (xmlout14670.txt, this is logged on the server). Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/ soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:HeaderResponseHeader xmlns=urn:obj.api.rightnow.comVersion9.2.0.112/Version/ResponseHeader/soap:Header soap:Body exec_rv xmlns=urn:obj.api.rightnow.com xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; transaction_rv errlog_cnt=0 contact_get_rvaddr country_id1/country_id /addr alt_name /alt_name banner /banner c_id159/c_id created2009-01-30T23:58:59Z/created custom_fieldcf_item cf_id2/cf_id data_type8/data_type val_int xsi:nil=true / /cf_item cf_item cf_id14/cf_id data_type2/data_type val_int xsi:nil=true / /cf_item cf_item cf_id4/cf_id data_type1/data_type val_int xsi:nil=true / /cf_item cf_item cf_id5/cf_id data_type2/data_type val_int xsi:nil=true / /cf_item cf_item cf_id79/cf_id data_type5/data_type val_str xsi:nil=true / /cf_item cf_item cf_id22/cf_id data_type5/data_type val_str xsi:nil=true / /cf_item cf_item cf_id23/cf_id data_type6/data_type val_str xsi:nil=true / /cf_item cf_item cf_id24/cf_id data_type2/data_type val_int xsi:nil=true / /cf_item cf_item cf_id25/cf_id data_type8/data_type val_int xsi:nil=true / /cf_item cf_item cf_id26/cf_id data_type1/data_type val_int xsi:nil=true / /cf_item cf_item cf_id27/cf_id data_type3/data_type val_int xsi:nil=true / /cf_item cf_item cf_id28/cf_id data_type7/data_type val_date xsi:nil=true / /cf_item cf_item cf_id29/cf_id data_type4/data_type val_dttm xsi:nil=true / /cf_item /custom_field disabled0/disabled email addrsm...@rightnow.com.invalid/addr invalid0/invalid /email email_alt1 invalid0/invalid /email_alt1 email_alt2 invalid0/invalid /email_alt2 name firstï¤ ï¤ /first lastSmith/last /name rule_state73/rule_state sourcelvl_id32002/lvl_id lvl_id1002/lvl_id /source state css1/css ma0/ma sa0/sa /state updated2009-02-02T23:34:48Z/updated /contact_get_rv /transaction_rv /exec_rv /soap:Body /soap:Envelope
RE: Axis with UTF-8
The xerces parser does not parse the 3 bytes of utf8 characters. It is supposed to return the 3 characters but returns 1 byte of uninitialized memory (0xcd). From: McCullough, Ryan [mailto:rmccullo...@rightnow.com] Sent: Tuesday, February 03, 2009 6:48 PM To: Apache AXIS C User List Cc: Antonczyk, Ryszard Subject: Axis with UTF-8 We are using Axis1 checked out from subversion along with Xerces-C Version 2.2.0. We are having trouble using Axis to retrieve UTF-8 characters. Is there any additional setup needed? Here is where we think things are going arye. axis\xml\xerces\XMLParserXerces.cpp::parse(bool ignoreWhitespace, bool peekIt) About line 125 there is this: // parse next token m_bCanParseMore = m_pParser-parseNext(m_ScanToken); It looks like the parseNext() function is converting 3 bytes of Unicode characters to 1 byte. Here is the hex data being returned from our web service: 0808h: EF A4 85; ï¤... I have also attached the xml that was returned from the web service (xmlout14670.txt, this is logged on the server). Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/
RE: Axis C++ 1.6 client app connecting using https through http proxy
Nadir, I think in HTTPTransport::setProxy( const char *pcProxyHost, unsigned int uiProxyPort) You need to force the unsecure channel to be used. Klitos, is it true that all communication to the Proxy server is unencrypted, but the communication from the proxy server to your web service is encrypted? -Ryan -Original Message- From: Nadir Amra [mailto:a...@us.ibm.com] Sent: Friday, January 23, 2009 3:49 PM To: Apache AXIS C User List Subject: Re: Axis C++ 1.6 client app connecting using https through http proxy Klitos, I am willing to work on this if you help me understand what needs to be done. There is an issue about tunneling here: http://issues.apache.org/jira/browse/AXISCPP-899 Maybe if you send me the traces and/or point me to something that tells me how this is suppose to work I can take a look into it. Nadir Amra Klitos Kyriacou klitos.kyria...@gmail.com wrote on 01/23/2009 09:26:09 AM: [image removed] Axis C++ 1.6 client app connecting using https through http proxy Klitos Kyriacou to: axis-c-user 01/23/2009 09:26 AM Please respond to Apache AXIS C User List Hi, this is my first post, I've searched the list but couldn't find the answer to my problem. I have installed Axis C++ 1.6, Xerces and OpenSSL on Windows XP, and set up the environment variable AXISCPP_DEPLOY and edited axiscpp.conf. I am trying to make an HTTPS connection to a web service through an HTTP proxy. I can connect successfully using Axis for Java, but I also want to do it in C++. In C++, I have code similar to the following: MyWebService api; api.setProxy(199.172.46.58, 8080); addCredentialsHeader(api, username, password); // local function that constructs a header api.myMethod(); I do the above inside a try block. When the application calls myMethod(), it catches the following exception: Axis exception 23: HTTPTransportException:Unknown Transport Exception error:140770FC: SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol I used Wireshark to see what's being sent through the network. First, I checked with the Axis Java application, which works ok. It sends a plain-text HTTP CONNECT request to the proxy server. The proxy server then responds and the encrypted text is subsequently sent to the web service through HTTP tunneling. When I use Wireshark with my equivalent Axis C++ application, I can see that it connects to the proxy server and then sends what looks like random binary data instead of a CONNECT request. Could it be encrypting it prematurely? Obviously, the proxy server doesn't understand it, so it sends back an HTTP 500 Server Error. Can anyone give me any help? Has anyone successfully managed to connect to an HTTPS service through an HTTP proxy? Thanks, Klitos
RE: AXISCPP: autogenerated class misinterprets type of its member
Also, don't forget to include the command line you use to generate the Axis C++ soap stubs. -Original Message- From: McCullough, Ryan Sent: Tuesday, January 06, 2009 4:46 PM To: Apache AXIS C User List Subject: RE: AXISCPP: autogenerated class misinterprets type of its member If you tried with the version in SVN, then an example WSDL would be helpful. -Original Message- From: virtan [mailto:vir...@virtan.com] Sent: Saturday, January 03, 2009 12:12 AM To: Apache AXIS C User List Subject: Re: AXISCPP: autogenerated class misinterprets type of its member On 03.01.2009, at 4:27, Nadir Amra wrote: Are you using the latest code base in SVN? If not, try that. The existing binaries are buggy and very old. If you are, need WSDL to recreate problem. I've tried. Can't compile binary - some problems with linkage (will describe in more details soon). Also your autotools files are broken, but it can be fixed. Nadir Amra virtan vir...@virtan.com wrote on 01/02/2009 04:45:40 PM: [image removed] autogenerated class misinterprets type of its member virtan to: Apache AXIS C User List 01/02/2009 04:52 PM Please respond to Apache AXIS C User List (C++) Found 2 bugs with compiling autogenerated classes. 1. Function selection error During compile of autogenerated file I've got the following error: autogenerated_file.cpp:220: error: 'class axiscpp::IWrapperSoapDeSerializer' has no member named 'null' autogenerated_file.cpp:223: error: 'null' was not declared in this scope $ head -n 220 autogenerated_file.cpp | tail -n 1 if ((ZIP = pIWSDZ-null( ZIP,0)) != NULL) where pIWSDZ is a pointer to instance of IWrapperSoapDeSerializer, passed as arg in autogenerated function. It is right: there are no null method in IWrapperSoapDeSerializer: $ grep -c null ../include/axis/IWrapperSoapDeSerializer.hpp 0 2. Misinterpreting of field type (looks like it is a reason of 1.) The same autogenerated file, also ZIP. original is an instance of autogenerated class. Code if (original.ZIP != NULL) { ZIP = new autogenerated_class(*(original.ZIP)); } else { ZIP = NULL; } causes same_autogenerated_file.cpp:309: warning: NULL used in arithmetic same_autogenerated_file.cpp:311: error: invalid type argument of 'unary *' It looks correct, because class of ZIP is defined as xsd__int. -- virtan / vir...@virtan.com / http://www.virtan.com -- virtan / vir...@virtan.com / http://www.virtan.com
RE: Axis 1.4 getResponseHeaders() sometimes returning empty array
Bump. From: McCullough, Ryan [mailto:rmccullo...@rightnow.com] Sent: Wednesday, December 17, 2008 3:03 PM To: axis-user@ws.apache.org Subject: Axis 1.4 getResponseHeaders() sometimes returning empty array I am using Axis (not Axis2) 1.4. After submitting a request to the server and receiving a response, I am calling SoapBindingStub.getResponseHeaders() (extends org.apache.axis.client.Stub). Sometimes (rarely), getResponseHeaders() returns an empty SOAPHeaderElement[] array. The length of the array is 0. The response from the server has what looks like a valid header: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema;soap:HeaderResponseHeader xmlns=urn:obj.api.rightnow.comVersion8.4.0.95/Version/ResponseHeader/soap:Headersoap:Bodyexec_rv xmlns=urn:obj.api.rightnow.com transaction_rv !-- SNIP -- /transaction_rv /exec_rv/soap:Body/soap:Envelope Here is the function from org/apache/axis/client/Stub.java: /** * Get the array of response header elements */ public SOAPHeaderElement[] getResponseHeaders() { SOAPHeaderElement[] array = new SOAPHeaderElement[0]; try { if (_call == null) return array; Vector h = _call.getResponseMessage().getSOAPEnvelope().getHeaders(); array = new SOAPHeaderElement[h.size()]; h.copyInto(array); return array; } catch (Exception e) { return array; } } It looks like an exception is being thrown in the try block somewhere before the array is resized. Any ideas what may be causing this? I have enabled log4j logging and set the root category to be DEBUG and am waiting for the issue to be reproduced. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/
RE: Large xml response
I believe this would be a configuration option in Apache to gzip responses. From: matthias.gai...@t-systems.com [mailto:matthias.gai...@t-systems.com] Sent: Thursday, December 18, 2008 9:38 AM To: axis-user@ws.apache.org Subject: Large xml response Hi group, I have read some earlier threads but haven't found an answer there. I want to implement a web service which will forward large xml strings which it receives via backend services. I have a few points where I want to ask if there is a standard solution. - Does Axis offer some standard mechanism to compress the contents which it delivers back? The packed size of the xml might be around 5mb which should be ok to return. - Is there a way to make Axis not (de)serializing the whole xml? AXIOM is going in that direction that it parses on demand, so I might save memory if I just take the OMElement I get via the backend services and return it with my service. What do you think? I am helpful for any hints to a solution. Matthias.
Axis 1.4 getResponseHeaders() sometimes returning empty array
I am using Axis (not Axis2) 1.4. After submitting a request to the server and receiving a response, I am calling SoapBindingStub.getResponseHeaders() (extends org.apache.axis.client.Stub). Sometimes (rarely), getResponseHeaders() returns an empty SOAPHeaderElement[] array. The length of the array is 0. The response from the server has what looks like a valid header: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema;soap:HeaderResponseHeader xmlns=urn:obj.api.rightnow.comVersion8.4.0.95/Version/ResponseHeader/soap:Headersoap:Bodyexec_rv xmlns=urn:obj.api.rightnow.com transaction_rv !-- SNIP -- /transaction_rv /exec_rv/soap:Body/soap:Envelope Here is the function from org/apache/axis/client/Stub.java: /** * Get the array of response header elements */ public SOAPHeaderElement[] getResponseHeaders() { SOAPHeaderElement[] array = new SOAPHeaderElement[0]; try { if (_call == null) return array; Vector h = _call.getResponseMessage().getSOAPEnvelope().getHeaders(); array = new SOAPHeaderElement[h.size()]; h.copyInto(array); return array; } catch (Exception e) { return array; } } It looks like an exception is being thrown in the try block somewhere before the array is resized. Any ideas what may be causing this? I have enabled log4j logging and set the root category to be DEBUG and am waiting for the issue to be reproduced. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | rmccullo...@rightnow.commailto:rmccullo...@rightnow.com | http://www.rightnow.comhttp://www.rightnow.com/
RE: can't create c++ client
I would checkout the latest source from the subversion repository and try again. The distribution that is posted on the Axis C++ site is very very old, buggy, and should really be updated to a newer version from source control. -Ryan -Original Message- From: virtan [mailto:vir...@virtan.com] Sent: Tuesday, December 16, 2008 11:46 AM To: axis-c-user@ws.apache.org Subject: can't create c++ client Hi, all. Nobody answered me. Trying to ask once again... I tried to create C++ client from valid wsdl file (attached). Got referenced but not defined error. Sure, it is wrong. All referenced elements properly defined. No problem reported using other wsdl parsers. Can you help me ? Details: Using precompiled linux binaries from http://www.apache.org/dist/ws/axis-c/axis-c-linux-current-bin.tar.gz [vir...@jail ~/tmp/ptt] java -version java version 1.6.0_0 IcedTea6 1.4 (fedora-7.b12.fc10-i386) Runtime Environment (build 1.6.0_0-b12) OpenJDK Client VM (build 10.0-b19, mixed mode) [vir...@jail ~/tmp/ptt] bash -x ./axis.sh + AXISINSTALLDIR=/home/virtan/tmp + CLASSPATH=/home/virtan/tmp/lib/axis/wsdl2ws.jar:/home/virtan/tmp/lib/ axisjava/axis.jar:/home/virtan/tmp/lib/axisjava/commons-discovery.jar:/ home/virtan/tmp/lib/axisjava/commons-logging.jar:/home/virtan/tmp/lib/ axisjava/jaxrpc.jar:/home/virtan/tmp/lib/axisjava/saaj.jar:/home/ virtan/tmp/lib/axisjava/wsdl4j.jar + java -cp /home/virtan/tmp/lib/axis/wsdl2ws.jar:/home/virtan/tmp/lib/ axisjava/axis.jar:/home/virtan/tmp/lib/axisjava/commons-discovery.jar:/ home/virtan/tmp/lib/axisjava/commons-logging.jar:/home/virtan/tmp/lib/ axisjava/jaxrpc.jar:/home/virtan/tmp/lib/axisjava/saaj.jar:/home/ virtan/tmp/lib/axisjava/wsdl4j.jar org.apache.axis.wsdl.wsdl2ws.WSDL2Ws ptt.wsdl -lc -v -sclient java.io.IOException: Element ContractorCheckListBySpecialtyRequest is referenced but not defined. at org .apache .axis.wsdl.symbolTable.SymbolTable.checkForUndefined(SymbolTable.java: 657) at org.apache.axis.wsdl.symbolTable.SymbolTable.add(SymbolTable.java:532) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java: 506) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java: 483) at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java: 356) at java.lang.Thread.run(Thread.java:636) org.apache.axis.wsdl.wsdl2ws.WrapperFault: java.io.IOException: Element ContractorCheckListBySpecialtyRequest is referenced but not defined. at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.init(Unknown Source) at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.main(Unknown Source) Caused by: java.io.IOException: Element ContractorCheckListBySpecialtyRequest is referenced but not defined. at org .apache .axis.wsdl.symbolTable.SymbolTable.checkForUndefined(SymbolTable.java: 657) at org.apache.axis.wsdl.symbolTable.SymbolTable.add(SymbolTable.java:532) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java: 506) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java: 483) at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java: 356) at java.lang.Thread.run(Thread.java:636) Code generation failed. Please see errors above.
RE: Axis 1.4: element with nillable=true minOcurrs=0 is omitted when value is null
Bump From: McCullough, Ryan [mailto:[EMAIL PROTECTED] Sent: Thursday, December 04, 2008 11:29 AM To: axis-user@ws.apache.org Subject: Axis 1.4: element with nillable=true minOcurrs=0 is omitted when value is null In Axis 1.4 (not Axis2) an element is omitted from the request if the value is set to null and it is has the nillable=true and minOccurs=0 attributes set in the schema. Here is the location where I think things are going wrong: org.apache.axis.encoding.ser.BeanSerializer.serialize(QName name, Attributes attributes, Object value, SerializationContext context) Here is the chunk of code: // Serialize each property for (int i=0; ipropertyDescriptor.length; i++) { SNIP // Read the value from the property if (propertyDescriptor[i].isReadable()) { if (itemQName != null || (!propertyDescriptor[i].isIndexed() !isArray)) { // Normal case: serialize the value Object propValue = propertyDescriptor[i].get(value); if (propValue == null) { // an element cannot be null if nillable property is set to // false and the element cannot be omitted if (!isNillable !isOmittable) { if (Number.class.isAssignableFrom(javaType)) { // If we have a null and it's a number, though, // we might turn it into the appropriate kind of 0. // TODO : Should be caching these constructors? try { Constructor constructor = javaType.getConstructor( SimpleDeserializer.STRING_CLASS); propValue = constructor.newInstance(ZERO_ARGS); } catch (Exception e) { // If anything goes wrong here, oh well we tried. } } if (propValue == null) { throw new IOException( Messages.getMessage( nullNonNillableElement, propName)); } } // if meta data says minOccurs=0, then we can skip // it if its value is null and we aren't doing SOAP // encoding. if (isOmittable !isEncoded) { // *** HERE IS THE PROBLEM I THINK *** continue; } } SNIP } else { SNIP } } } I snipped some sections of the code to make it easier to see where I think things are going wrong. How can I have an element that is nullable but omittable, but I want to explicitly set it to null. I don't know that I want this to be a global change either. If it helps, I did modify the soap stub generator to generate an attrib_nameSpecified Boolean flag in the soap stubs. This flag is set to true when the attribute is set: public class Street_addr implements java.io.Serializable, api.rightnow.com.RNOWISpecified { boolean UseSpecified; // Flag to indicate that we are serializing private java.lang.String city; private boolean citySpecified; private java.lang.Integer country_id; private boolean country_idSpecified; private java.lang.String postal_code; private boolean postal_codeSpecified; private java.lang.Integer prov_id; private boolean prov_idSpecified; private java.lang.String street; private boolean streetSpecified; public Street_addr() { } SNIP /** * Gets the prov_id value for this Street_addr. * * @return prov_id */ public java.lang.Integer getProv_id() { if (UseSpecified !prov_idSpecified) return null; return prov_id; } /** * Sets the prov_id value for this Street_addr. * * @param prov_id */ public void setProv_id(java.lang.Integer pprov_id) { prov_idSpecified=true; this.prov_id = pprov_id; } So I could possibly check to see if this flag is set to true before omitting the element. Thoughts? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED]mailto:[EMAIL PROTECTED] | http://www.rightnow.comhttp://www.rightnow.com/
Axis 1.4: element with nillable=true minOcurrs=0 is omitted when value is null
In Axis 1.4 (not Axis2) an element is omitted from the request if the value is set to null and it is has the nillable=true and minOccurs=0 attributes set in the schema. Here is the location where I think things are going wrong: org.apache.axis.encoding.ser.BeanSerializer.serialize(QName name, Attributes attributes, Object value, SerializationContext context) Here is the chunk of code: // Serialize each property for (int i=0; ipropertyDescriptor.length; i++) { SNIP // Read the value from the property if (propertyDescriptor[i].isReadable()) { if (itemQName != null || (!propertyDescriptor[i].isIndexed() !isArray)) { // Normal case: serialize the value Object propValue = propertyDescriptor[i].get(value); if (propValue == null) { // an element cannot be null if nillable property is set to // false and the element cannot be omitted if (!isNillable !isOmittable) { if (Number.class.isAssignableFrom(javaType)) { // If we have a null and it's a number, though, // we might turn it into the appropriate kind of 0. // TODO : Should be caching these constructors? try { Constructor constructor = javaType.getConstructor( SimpleDeserializer.STRING_CLASS); propValue = constructor.newInstance(ZERO_ARGS); } catch (Exception e) { // If anything goes wrong here, oh well we tried. } } if (propValue == null) { throw new IOException( Messages.getMessage( nullNonNillableElement, propName)); } } // if meta data says minOccurs=0, then we can skip // it if its value is null and we aren't doing SOAP // encoding. if (isOmittable !isEncoded) { // *** HERE IS THE PROBLEM I THINK *** continue; } } SNIP } else { SNIP } } } I snipped some sections of the code to make it easier to see where I think things are going wrong. How can I have an element that is nullable but omittable, but I want to explicitly set it to null. I don't know that I want this to be a global change either. If it helps, I did modify the soap stub generator to generate an attrib_nameSpecified Boolean flag in the soap stubs. This flag is set to true when the attribute is set: public class Street_addr implements java.io.Serializable, api.rightnow.com.RNOWISpecified { boolean UseSpecified; // Flag to indicate that we are serializing private java.lang.String city; private boolean citySpecified; private java.lang.Integer country_id; private boolean country_idSpecified; private java.lang.String postal_code; private boolean postal_codeSpecified; private java.lang.Integer prov_id; private boolean prov_idSpecified; private java.lang.String street; private boolean streetSpecified; public Street_addr() { } SNIP /** * Gets the prov_id value for this Street_addr. * * @return prov_id */ public java.lang.Integer getProv_id() { if (UseSpecified !prov_idSpecified) return null; return prov_id; } /** * Sets the prov_id value for this Street_addr. * * @param prov_id */ public void setProv_id(java.lang.Integer pprov_id) { prov_idSpecified=true; this.prov_id = pprov_id; } So I could possibly check to see if this flag is set to true before omitting the element. Thoughts? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED]mailto:[EMAIL PROTECTED] | http://www.rightnow.comhttp://www.rightnow.com/
RE: date datetime elements
Nadir, I made these changes to my source tree. If you are interested in seeing what I did, I can send the changed files to you. In the serializer of both Date.cpp and DateTime.cpp I added: #ifdef AXIS_USE_GMT // new code to create GMT times // basically it just appends a Z to the end of the date/datetime string #else // AXIS_USE_GMT // Calculate local timezone offset #endif // AXIS_USE_GMT In the deserializer I added #ifndef AXIS_USE_GMT // the t = labs (t - d) code inside the if statement where a Z is found on the end of the date #endif // AXIS_USE_GMT I then also added the -DAXIS_USE_GMT compile symbol to my VS project files. I needed to make a change to both the serializer and deserializer. The serializer will now create date/datetimes in the format 'CCYY(-)MM(-)DDZ' and 'CCYY(-)MM(-)DDThh:mm:ssZ' respectively. From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Tuesday, September 23, 2008 2:37 PM To: Apache AXIS C User List Cc: Apache AXIS C User List Subject: Re: date datetime elements Ryan, I do not think so. I think it would be easy to do by adding some sort of directive to the configuration file. When? Not sure :-(, but will add to my todo list. Files in question would be soap/xsd/DateTime.cpp and soap/xsd/Date.cpp Nadir Amra McCullough, Ryan [EMAIL PROTECTED] wrote on 09/23/2008 02:46:10 PM: [image removed] date datetime elements McCullough, Ryan to: Apache AXIS C User List 09/23/2008 02:55 PM Please respond to Apache AXIS C User List I am using Axis C (version 1), checked out from source control about 3 months ago. It looks like the xsd__date xsd__datetime fields are using the 'tm' structure. Is there a way to configure this to use GMT rather than local time? Currently a date looks like '2007-01-01-06:00' and a datetime '2007-01-01T11:11:11-06:00'. What I would like is something that looks like '2007-01-01' and '2007-01-01T11:11:11Z'. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.comhttp://www.rightnow.com/
date datetime elements
I am using Axis C (version 1), checked out from source control about 3 months ago. It looks like the xsd__date xsd__datetime fields are using the 'tm' structure. Is there a way to configure this to use GMT rather than local time? Currently a date looks like '2007-01-01-06:00' and a datetime '2007-01-01T11:11:11-06:00'. What I would like is something that looks like '2007-01-01' and '2007-01-01T11:11:11Z'. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED]mailto:[EMAIL PROTECTED] | http://www.rightnow.comhttp://www.rightnow.com/
https/ssl question
I am using Axis (version 1) built from the source in subversion (about 3 months old). I am statically linking in openssl. If I use a URL that contains https, but is self-signed, will axis still be able to communicate with the server over https/ssl? From the few tests I have performed, it seems that it does without needing to do anything else. The reason I ask is that the Java version of Axis requires me to setup a java keystore in order to use https to a server that has a self-signed certificate. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED]mailto:[EMAIL PROTECTED] | http://www.rightnow.comhttp://www.rightnow.com/
RE: InstantiationException with Axis 1.4...
James, there is not enough information. You will need to provide your soap stub code and an example source file that reproduces the issue. From: james a. cubeta [mailto:[EMAIL PROTECTED] Sent: Friday, September 19, 2008 9:17 AM To: axis-user@ws.apache.org Subject: InstantiationException with Axis 1.4... I am using Axis 1.4, and I am trying to write a simple test application of a web service. I saved the WSDL locally, used WSDL2Java to build stub code, created a JAR, and wrote a test case that basically does this: URL url = new URL(https://192.168.1.150:8443/simple-ws/service/SimpleExample;); SimpleExampleServiceLocator locator = new SimpleExampleServiceLocator(); SimpleExampleSoapBindingStub client = (SimpleExampleSoapBindingStub) locator.getSimpleExample(url); client.setUsername(username); client.setPassword(password); String response = client.sayHello(James); When I attempt to run this code, I get the following exception: AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userExcpetionhttp://schemas.xmlsoap.org/soap/envelope/%7dServer.userExcpetion faultSubcode: faultString: java.lang.InstantiationException faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:java.lang.InstantiationExceptionhttp://xml.apache.org/axis/%7dstackTrace:java.lang.InstantiationException at org.apache.axis.encoding.ConstructorTarget.set(ConstructorTarget.java:97) snip at org.apache.axis.Call.invoke(Call.java:1812) Sorry if this is not enough information, but the exception stack seems to be pretty useless overall... :-/ Ideas/Thoughts appreciated, James -- james a. cubeta
RE: Newbie wsdl2java question...
No, you have to setup the keystore to contain the self-signed certificate. If you perform a google search you will see examples of how this can be done. There may be an alternative to using System.setProperty so that you do not need to modify the WSDL2Java code. Someone on this list may be able to tell you how, or Google is your friend. Regardless, I don't see how this would fix your Instantiation exception reported in the other email. From: james a. cubeta [mailto:[EMAIL PROTECTED] Sent: Thursday, September 18, 2008 6:28 PM To: axis-user@ws.apache.org Subject: Re: Newbie wsdl2java question... Thanks Ryan - some stupid follow-up question: First, setup a java keystore. A simple google search should get you going. Just set up an empty keystore? Next, put this code in the WSDL2Java main function: // set the keystore stuff System.setProperty(javax.net.ssl.trustStore, keystore_filename); System.setProperty(javax.net.ssl.keyStorePassword, keystore_password); How am I to modify the WSDL2Java utility? I only have a bunch of Axis-related JARs. Thanks, James -Ryan From: james a. cubeta [mailto:[EMAIL PROTECTED]mailto:[EMAIL PROTECTED]] Sent: Thursday, September 18, 2008 3:10 PM To: axis-user@ws.apache.orgmailto:axis-user@ws.apache.org Subject: Newbie wsdl2java question... Hello everyone, I am both new to Axis and new to this mailing list, so I apologize in advance if my questions are simple or have been covered... I am trying to use Axis 1.4 to develop a simple application that will test a web service that is deployed on a private network. As a first step, I am trying to generate stub code using the WSDL2Java tool. Because the server is https uses an IP only, my command line resembles this: java org.apache.axis.wsdl.WSDL2Java --username user --password pass https://192.168.1.150:8443/example-ws/services/SimpleExample?wsdl When I run this, I get the following exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target exception stack truncated Questions: 1. I assume that the reason this is happening is because the server is using a self-signed certificate, and the JVM cannot validate it. Is this assumption correct? 2. How can I get around this problem? (Note that I do not have administrative access to the server, so making changes on that end is probably not possible). Thanks in advance for any help or references, James -- james a. cubeta -- james a. cubeta
RE: Newbie wsdl2java question...
First, setup a java keystore. A simple google search should get you going. Next, put this code in the WSDL2Java main function: // set the keystore stuff System.setProperty(javax.net.ssl.trustStore, keystore_filename); System.setProperty(javax.net.ssl.keyStorePassword, keystore_password); -Ryan From: james a. cubeta [mailto:[EMAIL PROTECTED] Sent: Thursday, September 18, 2008 3:10 PM To: axis-user@ws.apache.org Subject: Newbie wsdl2java question... Hello everyone, I am both new to Axis and new to this mailing list, so I apologize in advance if my questions are simple or have been covered... I am trying to use Axis 1.4 to develop a simple application that will test a web service that is deployed on a private network. As a first step, I am trying to generate stub code using the WSDL2Java tool. Because the server is https uses an IP only, my command line resembles this: java org.apache.axis.wsdl.WSDL2Java --username user --password pass https://192.168.1.150:8443/example-ws/services/SimpleExample?wsdl When I run this, I get the following exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target exception stack truncated Questions: 1. I assume that the reason this is happening is because the server is using a self-signed certificate, and the JVM cannot validate it. Is this assumption correct? 2. How can I get around this problem? (Note that I do not have administrative access to the server, so making changes on that end is probably not possible). Thanks in advance for any help or references, James -- james a. cubeta
RE: Axis c++ calculator compiling error, Admin Client
I would check out the Axis1 code from subversion. The 1.6beta that is available for download on the site is VERY old and out-dated. Subversion is pretty stable and has many updates. The code differences between subversion the 1.6beta on the site are pretty extensive. -Ryan -Original Message- From: Martina08 [mailto:[EMAIL PROTECTED] Sent: Saturday, August 16, 2008 3:51 AM To: axis-c-user@ws.apache.org Subject: RE: Axis c++ calculator compiling error, Admin Client Hi, thank you for the answer first!! I think you use Axis2, but i work the calculator example with axis1.6 c++, see: http://ws.apache.org/axis/cpp/clientuser-guide.html (i hope its a forum not only for axis2 user..! ) I think the example is a little bit different... The generation of the Stub-Code with the wsdl is successfull, but i cant compile. There is the undefined reference to calculator::calculator() error i describe first. is there anybody uses axis1.x too, who can help me? Although thank you very much Ravi K. ;-)!!! Ravi Krishnaswamy wrote: I don't know if we're talking about the same sample (under samples/server/Calculator): I had to make changes in both the client and server implementations of the Calculator sample. I develop in win32. Here are the main changes I made: For the Client: - I recreated the stubs from wsdl2c using the wsdl in samples/server/Calculator.wsdl - I reimplemented the 'test_calculator.c' file to set the parameters on the request object based on the Actual names of the parameters in the wsdl (they were out of sync): stub = axis2_stub_create_Calculator(env, client_home, endpoint_uri); /* create the struct */ add_req = adb_add_create(env); adb_add_set_param_1(add_req, env, val1); == adb_add_set_param_2(add_req, env, val2); == /* invoke the web service method */ add_res = axis2_stub_op_Calculator_add(stub, env, add_req); if (!add_res) { printf(Error: response NULL\n); return -1; } /* return the output params using databinding */ ret_val = adb_addResponse_get_result(add_res, env); printf(finally: add (%d %d ) = %d\n, val1, val2, ret_val); return 0 - I added the build target axis2_client_calculator into the makefile in build\win32\makefile (just use another client example) For the Server, I found the code was out of sync as well from the wsdl. The following are the main changes I made: - Code diff is below. Essentially 2 changes, - 1. the object model in calc.c was deeper than the wsdl indicated, so I eliminated Several of the lines to match the actual SOAP object: 2. the response object was different from what was expected based on the wsdl and the client code. *** calc.c Tue Aug 05 16:31:14 2008 --- calc.c.bak Thu Jul 10 17:54:18 2008 *** *** 34,54 axis2_char_t *param2_str = NULL; long int param2 = 0; if (!node) { AXIS2_ERROR_SET(env-error, AXIS2_ERROR_SVC_SKEL_INPUT_OM_NODE_NULL, AXIS2_FAILURE); printf(Calculator client request ERROR: input parameter NULL\n); return NULL; } ! param1_node = axiom_node_get_first_child(node, env); if (!param1_node) { AXIS2_ERROR_SET(env-error, AXIS2_ERROR_SVC_SKEL_INVALID_XML_FORMAT_IN_REQUEST, AXIS2_FAILURE); printf(Calculator service ERROR: invalid XML in request\n); return NULL; } param1_text_node = axiom_node_get_first_child(param1_node, env); if (!param1_text_node) --- 34,73 axis2_char_t *param2_str = NULL; long int param2 = 0; if (!node) { AXIS2_ERROR_SET(env-error, AXIS2_ERROR_SVC_SKEL_INPUT_OM_NODE_NULL, AXIS2_FAILURE); printf(Calculator client request ERROR: input parameter NULL\n); return NULL; } ! complex_node = axiom_node_get_first_child(node, env); ! if (!complex_node) ! { ! AXIS2_ERROR_SET(env-error, ! AXIS2_ERROR_SVC_SKEL_INVALID_XML_FORMAT_IN_REQUEST, ! AXIS2_FAILURE); ! printf(Calculator service ERROR: invalid XML in request\n); ! return NULL; ! } ! seq_node = axiom_node_get_first_child(complex_node, env); ! if (!seq_node) ! { ! AXIS2_ERROR_SET(env-error, ! AXIS2_ERROR_SVC_SKEL_INVALID_XML_FORMAT_IN_REQUEST, ! AXIS2_FAILURE); ! printf(Calculator service ERROR: invalid XML in request\n); ! return NULL; ! } ! ! param1_node = axiom_node_get_first_child(seq_node, env); if (!param1_node) { AXIS2_ERROR_SET(env-error, AXIS2_ERROR_SVC_SKEL_INVALID_XML_FORMAT_IN_REQUEST, AXIS2_FAILURE); printf(Calculator service ERROR: invalid XML in request\n); return NULL;
RE: Axis C++ version, error
The version at http://www.apache.org/dist/ws/axis-c/ should NOT be used. Delete the directory from your hard-drive. You should download a subversion client (tortoise svn http://tortoisesvn.tigris.org/ is really nice and easy to use). Then check the code out from the subversion repository. Here is the repository string you put into your subversion client: http://svn.apache.org/repos/asf/webservices/axis/trunk/c Once you have done that, you should be able to open the VS project (I don't know if VS 2005 works, we use VS 6.0 and Nadir uses linux makefiles). -Ryan -Original Message- From: Martina08 [mailto:[EMAIL PROTECTED] Sent: Monday, August 18, 2008 7:06 AM To: axis-c-user@ws.apache.org Subject: Axis C++ version, error Hi, perhaps i have so many problems because i use a very buggy version of axis c++. I have download the package on the axis site: http://www.apache.org/dist/ws/axis-c/ is this correct? I have read that on svn is the laterst version see: http://svn.apache.org/viewvc/webservices/?pathrev=393482 but there are only several files and no download package..so i replace all files with the files on the svn site, but it solves not the problems. I have still the undefined reference to Calculator::calculator() -error and dont know what to do.. I need really help... -- View this message in context: http://www.nabble.com/Axis-C%2B%2B-version%2C-error-tp19031171p19031171.html Sent from the Axis - C++ - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Axis1.4 vs Axis2-1.4
Is upgrading from Axis-1.4 to Axis2-1.4 easy? -Ryan From: sumedha rubasinghe [mailto:[EMAIL PROTECTED] Sent: Friday, July 11, 2008 9:15 AM To: axis-user@ws.apache.org Subject: Re: Axis1.4 vs Axis2-1.4 Hi Thamizhannal, Visit http://ws.apache.org/axis2/ read the section under topic Why Apache Axis2:. In a nutshell, axis2-1.x is a major re-write of axis-1.x (note the missing '2') with a new architecture. Latest release is axis2-1.4 (http://ws.apache.org/axis2/1_4/contents.html). Since your starting web services with Axis2, I recommend you to follow the getting start guide @ http://ws.apache.org/axis2/1_4/quickstartguide.html . /sumedha On Fri, Jul 11, 2008 at 8:24 PM, Thamizh [EMAIL PROTECTED] wrote: Hi All, I am new to AXIS web service development. Can you please let me what is the difference between axis1.4 vs axis2-1.4 Regards, Thamizhannal P Download prohibited? No problem. CHAT http://in.rd.yahoo.com/tagline_webmessenger_1/*http:/in.messenger.yahoo.com/webmessengerpromo.php from any browser, without download.
RE: Axis1.4 vs Axis2-1.4
Thanks. Yes, upgrade meant moving from Axis-1.4 to Axis2-1.4. I was just curious how much pain would be involved. It looks like it would essentially be like implementing an entirely different SOAP toolkit. -Ryan -Original Message- From: Roxanne Yee [mailto:[EMAIL PROTECTED] Sent: Friday, July 11, 2008 1:24 PM To: axis-user@ws.apache.org Subject: RE: Axis1.4 vs Axis2-1.4 Dear Ryan, From what I've read about Axis and Axis2 they are very different in their core approaches. It really depends on your definition of upgrade. If you mean a version upgrade, I believe that would be not be possible. The reason why Axis2 is not just Axis 1.5 or such is because, as I've mentioned, they are different approaches. If upgrade means you want change over from Axis1 to Axis2 architecture, which is what you need to do, then you I'm not sure what you must do other than read this website: http://ws.apache.org/axis2/1_4/migration.html But you don't have to take my word for it, I'm a newbie myself! :P --RY P.S. If you need a good book try this one: http://www.packtpub.com/creating-web-services-with-apache-axis-2/book -Original Message- From: McCullough, Ryan [mailto:[EMAIL PROTECTED] Sent: Fri 7/11/2008 6:36 AM To: axis-user@ws.apache.org Subject: RE: Axis1.4 vs Axis2-1.4 Is upgrading from Axis-1.4 to Axis2-1.4 easy? -Ryan From: sumedha rubasinghe [mailto:[EMAIL PROTECTED] Sent: Friday, July 11, 2008 9:15 AM To: axis-user@ws.apache.org Subject: Re: Axis1.4 vs Axis2-1.4 Hi Thamizhannal, Visit http://ws.apache.org/axis2/ read the section under topic Why Apache Axis2:. In a nutshell, axis2-1.x is a major re-write of axis-1.x (note the missing '2') with a new architecture. Latest release is axis2-1.4 (http://ws.apache.org/axis2/1_4/contents.html). Since your starting web services with Axis2, I recommend you to follow the getting start guide @ http://ws.apache.org/axis2/1_4/quickstartguide.html . /sumedha On Fri, Jul 11, 2008 at 8:24 PM, Thamizh [EMAIL PROTECTED] wrote: Hi All, I am new to AXIS web service development. Can you please let me what is the difference between axis1.4 vs axis2-1.4 Regards, Thamizhannal P Download prohibited? No problem. CHAT http://in.rd.yahoo.com/tagline_webmessenger_1/*http:/in.messenger.yahoo.com /webmessengerpromo.php from any browser, without download. smime.p7s Description: S/MIME cryptographic signature
RE: TRACE related defines in AxisTrace.h
Mike, if you did not download the source from subversion I would really recommend you do so. The distributions available for download on the site are very old. The newer subversion files have several bugs fixed from the distributions and the WSDL2Ws tool generates much better (read more correct) soap stubs. -Ryan -Original Message- From: Mike Marchywka [mailto:[EMAIL PROTECTED] Sent: Wednesday, June 04, 2008 8:27 AM To: axis-c-user@ws.apache.org Subject: TRACE related defines in AxisTrace.h Hi, I downloaded the linux source the other day and am trying to build this under cygwin. I don't have ant which AFAIK is your suggested build tool. However, most of the stuff just compiles with a few minor issues in some things like time include files. However, I encountered this thing and I'm not sure what to make of it. I just want to write some simple test programs to exchange SOAP messages with a remote server and would prefer to have any trace/debug tools enabled but at this point a reference to doc's describing these defines would help. Thanks. #ifdef AXISTRACE_LIBRARY extern AxisTraceEntrypoints *g_traceEntrypoints; #elif !defined(AXIS_CLIENTC_LIB) extern AxisTraceEntrypoints g_traceEntrypoints; #endif #ifdef AXISTRACE_LIBRARY_MAINENTRYPOINT AxisTraceEntrypoints *g_traceEntrypoints = NULL; #endif $ for f in `ls *.cpp`; do g=`echo $f| sed -e 's/\.cpp/.o/'` ; if [ ! -e $g ] ; then echo $f; g++ -D__CYGWIN__ -I../../../include -c $f ; fi ; done ChannelFactory.cpp HTTPTransport.cpp HTTPTransportException.cpp HTTPTransportInstantiator.cpp In file included from HTTPTransportInstantiator.cpp:27: ../../common/AxisTrace.h:126: error: conflicting declaration 'axiscpp::AxisTrace Entrypoints*axiscpp::g_traceEntrypoints' ../../common/AxisTrace.h:122: error: 'axiscpp::g_traceEntrypoints' has a previou s declaration as `axiscpp::AxisTraceEntrypoints axiscpp::g_traceEntrypoints' ../../common/AxisTrace.h:126: error: type mismatch with previous external decl o f `axiscpp::AxisTraceEntrypoints*axiscpp::g_traceEntrypoints' ../../common/AxisTrace.h:122: error: previous external decl of `axiscpp::AxisTra ceEntrypoints axiscpp::g_traceEntrypoints' ../../common/AxisTrace.h:126: error: declaration of `axiscpp::AxisTraceEntrypoin ts*axiscpp::g_traceEntrypoints' ../../common/AxisTrace.h:122: error: conflicts with previous declaration `axiscp p::AxisTraceEntrypoints axiscpp::g_traceEntrypoints' URL.cpp AxisConfig.h has this little comment at top, #ifdef ENABLE_AXISTRACE /* TRACE ADDED BY THE TRACE INSTRUMENTOR TOOL */ #include ../common/AxisTrace.h #endif Mike Marchywka 586 Saint James Walk Marietta GA 30067-7165 404-788-1216 (C)- leave message 989-348-4796 (P)- emergency only [EMAIL PROTECTED] Note: If I am asking for free stuff, I normally use for hobby/non-profit information but may use in investment forums, public and private. Please indicate any concerns if applicable. Note: Hotmail is possibly blocking my mom's entire ISP - try me on [EMAIL PROTECTED] if no reply here. Thanks. _ Enjoy 5 GB of free, password-protected online storage. http://www.windowslive.com/skydrive/overview.html?ocid=TXT_TAGLM_WL_Refresh_ skydrive_062008 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
suggested patch: _array class should have exposed size()
I added a public 'int size();' to my *_Array classes. It is useful for determining the size of the _Array. In ArrayParamHeaderWriter.java-writeMethods() add writer.write(\t\tint size();\n); In ArrayParamWriter.java-writeMethods() add this.writeSizeMethod(); Add this method: /** * @throws WrapperFault */ protected void writeSizeMethod() throws WrapperFault { try { writer.write(int + classname + :: + size()\n); writer.write({\n); writer.write(\treturn m_Size;\n); writer.write(}\n\n); } catch (IOException e) { throw new WrapperFault(e); } } Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature
minor bug (spelling) in org\apache\axis\wsdl\wsdl2ws\ParamWriter.java
attribfeilds should be attribfields (4 occurences) elementfeilds should be elementfields (4 occurences) Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature
trouble parsing response
We are having a problem parsing the return from the server (non axis). Our wsdl has these definitions: message name=exec part name=parameters element=ons:exec / /message message name=exec_rv part name=parameters element=ons:exec_rv / /message portType name=Soap operation name=exec input message=tns:exec / output message=tns:exec_rv / /operation /portType Ons is defined as xmlns:ons=urn:obj.api.rightnow.com The exec element is defined as: xs:element name=exec xs:complexType xs:sequence xs:element name=transaction type=transaction minOccurs=1 maxOccurs=unbounded / /xs:sequence /xs:complexType /xs:element And the exec_rv: xs:element name=exec_rv xs:complexType xs:sequence xs:element name=fatal_err_rv type=fatal_err_rv minOccurs=0 maxOccurs=1 / xs:element name=trans_abort_rv type=trans_abort_rv minOccurs=0 maxOccurs=1 / xs:element name=transaction_rv type=transaction_rv minOccurs=0 maxOccurs=unbounded / /xs:sequence /xs:complexType /xs:element The 'transaction' type is a complexType with a 'choice' of elements. The elements have a type which maps to a complex type and they all have a minOccurs of 0. Here is an example: xs:complexType name=transaction xs:choice minOccurs=1 maxOccurs=unbounded xs:element name=account_login type=login_data minOccurs=0 maxOccurs=unbounded / xs:element name=create_id type=tbl_iv minOccurs=0 maxOccurs=unbounded / xs:element name=org_create type=org minOccurs=0 maxOccurs=unbounded / /xs:choice /xs:complexType The 'transaction_rv' type looks very similar to the transaction type. 'trans_abort_rv' is an extension to transaction_rv. 'fatal_err_rv' is a complexType with 'sequence' elements containing data about the fatal error. My Soap.cpp stub has an exec() function in it that takes 4 params: exec(Transaction_Array* Value0, AXIS_OUT_PARAM Fatal_err_rv* * OutValue0, AXIS_OUT_PARAM Trans_abort_rv* * OutValue1, AXIS_OUT_PARAM Transaction_rv_Array ** OutValue2) The response from the server looks something like this: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:Header ResponseHeader xmlns=urn:obj.api.rightnow.com Version8.11.0.4/Version /ResponseHeader /soap:Header soap:Body exec_rv xmlns=urn:obj.api.rightnow.com xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; transaction_rv errlog_cnt=0 account_login_rvacct_id*/acct_id session_id**/session_id /account_login_rv /transaction_rv /exec_rv /soap:Body /soap:Envelope The problem is that in the exec() function, it tries to getCmplxObject() for fatal_err_rv, then getCmplxObject() for trans_abort_rv, then it tries to getCmplxArray() for transaction_rv but by now the current node is up to account_login_rv. Here is the c++ code from Soap::exec() if (AXIS_SUCCESS == m_pCall-sendAndReceive()) { if(AXIS_SUCCESS == m_pCall-checkMessage(exec_rv, urn:obj.api.rightnow.com)) { *OutValue0 = (Fatal_err_rv*)m_pCall-getCmplxObject((void*) Axis_DeSerialize_Fatal_err_rv, (void*) Axis_Create_Fatal_err_rv, (void*) Axis_Delete_Fatal_err_rv,fatal_err_rv, 0); *OutValue1 = (Trans_abort_rv*)m_pCall-getCmplxObject((void*) Axis_DeSerialize_Trans_abort_rv, (void*) Axis_Create_Trans_abort_rv, (void*) Axis_Delete_Trans_abort_rv,trans_abort_rv, 0); if (OutValue2 != NULL) { if (*OutValue2 == NULL) *OutValue2 = new Transaction_rv_Array(); else (*OutValue2)-clear(); m_pCall-getCmplxArray(*OutValue2, (void*) Axis_DeSerialize_Transaction_rv, (void*) Axis_Create_Transaction_rv, (void*) Axis_Delete_Transaction_rv, transaction_rv, Axis_URI_Transaction_rv); } else { // Unable to return value, but will deserialize to ensure subsequent elements can be correctly processed. Transaction_rv_Array * pTemp2 = new Transaction_rv_Array(); m_pCall-getCmplxArray(pTemp2, (void*) Axis_DeSerialize_Transaction_rv, (void*) Axis_Create_Transaction_rv, (void*) Axis_Delete_Transaction_rv, transaction_rv, Axis_URI_Transaction_rv); delete pTemp2; } } } My code is inside the 'if (OutValue2 != NULL)' after it clears OutValue2 and tries to getCmplxArray(). If I step into, I eventually step into XMLParserXerces::parse (bool ignoreWhitespace, bool peekIt). In this code, m_Xhandler.getAnyElement(); is called and returns a whitespace element, on the second attempt, the account_login_rv element is returned. It seems that parseNext() is being called too many times. Here is my stack trace for when I have account_login_rv in elem (I inserted
RE: No answers?
Here are a list of issues I encountered with the generated soap objects. 1) I found a bug in BeanParamWriter.java. In writeRestrictionCheckerFunction(), the opening brace '{' was not being commented out. writer.write( //)\n\t{\n); should be writer.write( //)\n); writer.write( //\t{\n); Notice how there was a newline, then a tab and the open brace with no comment. This caused compilation errors. 2) I also think I found a problem with XSD_DOUBLE and XSD_DATETIME. I have this in my schema xsd: xs:complexType name=ac_value xs:choice xs:element name=cval minOccurs=0 nillable=true type=currency / xs:element name=dval minOccurs=0 nillable=true type=xs:double / xs:element name=ival minOccurs=0 nillable=true type=xs:long / xs:element name=sval minOccurs=0 nillable=true type=xs:string / xs:element name=tval minOccurs=0 nillable=true type=dttm / /xs:choice /xs:complexType It was generating this code in the Serialize sub-elements. section: else if(param-dval) { if (param-dval != NULL) pSZ-serializeAsElement(dval, Axis_URI_Ac_value, (void*)(*(param-dval)), XSD_DOUBLE); } // snipped irrelevant code else if(param-tval) { if (param-tval != NULL) pSZ-serializeAsElement(tval, Axis_URI_Ac_value, (void*)(*(param-tval)), XSD_DATETIME); } When I tried to compile this file, I received these 2 errors: error C2440: 'type cast' : cannot convert from 'double' to 'void *' error C2440: 'type cast' : cannot convert from 'struct tm' to 'void *' If I removed the de-reference * from param, the compile errors went away. pSZ-serializeAsElement(dval, Axis_URI_Ac_value, (void*)(param-dval), XSD_DOUBLE); pSZ-serializeAsElement(tval, Axis_URI_Ac_value, (void*)(param-tval), XSD_DATETIME); 3) I received warnings all over the place about peekedElementName not being used (unreferenced). So, I removed the lines: // We always use this... writer.write(\tconst char* peekedElementName;\n); And then where peekedElementName is used, I added this code: // We only peek for elements, not element attributes! if (attribs[i].isOptional() !attribs[i].isAttribute()) { writer.write(tab1 + \tconst char* peekedElementName + soapTagName + ;\n); writer.write(tab1 + peekedElementName + soapTagName + = pIWSDZ-peekNextElementName();\n); writer.write(tab1 + if (strcmp(peekedElementName + soapTagName + , \ + soapTagName + \) == 0)\n); writer.write(tab1 + {\n); tab2 += \t; } if (attribs[i].isOptional()) { writer.write(tab1 + \tconst char* peekedElementName + soapTagName + ;\n); writer.write(tab1 + peekedElementName + soapTagName + = pIWSDZ-peekNextElementName();\n); writer.write(tab1 + if (strcmp(peekedElementName + soapTagName + , \ + soapTagName + \) == 0)\n); tab2 += \t; } I had to append the soapTagName to the peekedElementName, otherwise I got re-definition errors. 4) The fourth issue I had is more specific to my wsdl and c++. I have a class called timezone, this caused compilation errors because timezone already exists in vc98\include\time.h. So, what I did was add a function to CUtils that formats the name of user defined types to start with a capital letter. I know this is ugly, but it works for me. I don't expect issue 4 to make it into the source tree, but I would like it if 1-3 could be considered for inclusion in the WSDL2Ws soap stub generator. -Ryan -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 2:02 PM To: Apache AXIS C User List Cc: Apache AXIS C User List Subject: RE: No answers? Using 1.5 and 1.6Beta is bad idea...yes, latest code in SVN is better than zip distributions. Nadir Amra Integrated Web services for i5/OS IBM Rochester, MN, (Tel. 507-253-0645, t/l 553-0645) Internet: [EMAIL PROTECTED] McCullough, Ryan [EMAIL PROTECTED] wrote on 05/22/2008 01:58:03 PM: Am I better off using the code in SVN rather than the zip distributions? Is using 1.5 a bad idea? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: No answers?
I forgot to mention, I have fixes for the project files as well. AxisClientDLL.dsp Remove AxisConfigException.cpp, AxisEngineException.cpp, AxisGenException.cpp, AxisParseException.cpp, AxisSoapException.cpp AxisWsddException.cpp. transport\axis3\Axis3.dsp Add soap\apr_base64.cpp Remove transport\axis3\HTTPTransportException.cpp transport\axis3\HTTPChannel\HTTPChannel.dsp remove transport\axis3\HTTPTransportException.cpp xml\xerces\AxisXMLParserXerces.dsp remove xml\AxisParseException.cpp I also found that I needed to change '/MT' to '/MD (multi-threaded to multi-threaded dll) to get the libraries to load correctly on windows xp with IE7 (stupid dwmapi.dll issue). -Ryan -Original Message- From: McCullough, Ryan [mailto:[EMAIL PROTECTED] Sent: Friday, May 23, 2008 10:23 AM To: Apache AXIS C User List Cc: [EMAIL PROTECTED] Subject: RE: No answers? Here are a list of issues I encountered with the generated soap objects. 1) I found a bug in BeanParamWriter.java. In writeRestrictionCheckerFunction(), the opening brace '{' was not being commented out. writer.write( //)\n\t{\n); should be writer.write( //)\n); writer.write( //\t{\n); Notice how there was a newline, then a tab and the open brace with no comment. This caused compilation errors. 2) I also think I found a problem with XSD_DOUBLE and XSD_DATETIME. I have this in my schema xsd: xs:complexType name=ac_value xs:choice xs:element name=cval minOccurs=0 nillable=true type=currency / xs:element name=dval minOccurs=0 nillable=true type=xs:double / xs:element name=ival minOccurs=0 nillable=true type=xs:long / xs:element name=sval minOccurs=0 nillable=true type=xs:string / xs:element name=tval minOccurs=0 nillable=true type=dttm / /xs:choice /xs:complexType It was generating this code in the Serialize sub-elements. section: else if(param-dval) { if (param-dval != NULL) pSZ-serializeAsElement(dval, Axis_URI_Ac_value, (void*)(*(param-dval)), XSD_DOUBLE); } // snipped irrelevant code else if(param-tval) { if (param-tval != NULL) pSZ-serializeAsElement(tval, Axis_URI_Ac_value, (void*)(*(param-tval)), XSD_DATETIME); } When I tried to compile this file, I received these 2 errors: error C2440: 'type cast' : cannot convert from 'double' to 'void *' error C2440: 'type cast' : cannot convert from 'struct tm' to 'void *' If I removed the de-reference * from param, the compile errors went away. pSZ-serializeAsElement(dval, Axis_URI_Ac_value, (void*)(param-dval), XSD_DOUBLE); pSZ-serializeAsElement(tval, Axis_URI_Ac_value, (void*)(param-tval), XSD_DATETIME); 3) I received warnings all over the place about peekedElementName not being used (unreferenced). So, I removed the lines: // We always use this... writer.write(\tconst char* peekedElementName;\n); And then where peekedElementName is used, I added this code: // We only peek for elements, not element attributes! if (attribs[i].isOptional() !attribs[i].isAttribute()) { writer.write(tab1 + \tconst char* peekedElementName + soapTagName + ;\n); writer.write(tab1 + peekedElementName + soapTagName + = pIWSDZ-peekNextElementName();\n); writer.write(tab1 + if (strcmp(peekedElementName + soapTagName + , \ + soapTagName + \) == 0)\n); writer.write(tab1 + {\n); tab2 += \t; } if (attribs[i].isOptional()) { writer.write(tab1 + \tconst char* peekedElementName + soapTagName + ;\n); writer.write(tab1 + peekedElementName + soapTagName + = pIWSDZ-peekNextElementName();\n); writer.write(tab1 + if (strcmp(peekedElementName + soapTagName + , \ + soapTagName + \) == 0)\n); tab2 += \t; } I had to append the soapTagName to the peekedElementName, otherwise I got re-definition errors. 4) The fourth issue I had is more specific to my wsdl and c++. I have a class called timezone, this caused compilation errors because timezone already exists in vc98\include\time.h. So, what I did was add a function to CUtils that formats the name of user defined types to start with a capital letter. I know this is ugly, but it works for me. I don't expect issue 4 to make it into the source tree, but I would like it if 1-3 could be considered for inclusion in the WSDL2Ws soap stub generator. -Ryan -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 2:02 PM To: Apache AXIS C User List Cc: Apache AXIS C User List Subject: RE: No answers? Using 1.5 and 1.6Beta is bad idea...yes, latest code in SVN is better than zip distributions. Nadir Amra Integrated Web services for i5/OS IBM Rochester, MN, (Tel. 507-253-0645, t/l 553-0645) Internet: [EMAIL PROTECTED] McCullough, Ryan [EMAIL PROTECTED] wrote on 05/22/2008 01:58:03 PM: Am I better off using the code in SVN rather than the zip distributions? Is using 1.5 a bad idea? - To unsubscribe, e-mail: [EMAIL
RE: No answers?
Fyi, I am using MS VC 6.0 and I believe I have sp5 installed. -Ryan -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Friday, May 23, 2008 10:41 AM To: McCullough, Ryan Cc: Apache AXIS C User List Subject: RE: No answers? Will take a look at these...I think (1) is my fault due to a recent change I made. Should not have been included. It is now corrected. The others I will take a look at and let you know. Thanks. Nadir Amra McCullough, Ryan [EMAIL PROTECTED] wrote on 05/23/2008 11:22:37 AM: Here are a list of issues I encountered with the generated soap objects. 1) I found a bug in BeanParamWriter.java. In writeRestrictionCheckerFunction(), the opening brace '{' was not being commented out. writer.write( //)\n\t{\n); should be writer.write( //)\n); writer.write( //\t{\n); Notice how there was a newline, then a tab and the open brace with no comment. This caused compilation errors. 2) I also think I found a problem with XSD_DOUBLE and XSD_DATETIME. I have this in my schema xsd: xs:complexType name=ac_value xs:choice xs:element name=cval minOccurs=0 nillable=true type=currency / xs:element name=dval minOccurs=0 nillable=true type=xs:double / xs:element name=ival minOccurs=0 nillable=true type=xs:long / xs:element name=sval minOccurs=0 nillable=true type=xs:string / xs:element name=tval minOccurs=0 nillable=true type=dttm / /xs:choice /xs:complexType It was generating this code in the Serialize sub-elements. section: else if(param-dval) { if (param-dval != NULL) pSZ-serializeAsElement(dval, Axis_URI_Ac_value, (void*)(*(param-dval)), XSD_DOUBLE); } // snipped irrelevant code else if(param-tval) { if (param-tval != NULL) pSZ-serializeAsElement(tval, Axis_URI_Ac_value, (void*)(*(param-tval)), XSD_DATETIME); } When I tried to compile this file, I received these 2 errors: error C2440: 'type cast' : cannot convert from 'double' to 'void *' error C2440: 'type cast' : cannot convert from 'struct tm' to 'void *' If I removed the de-reference * from param, the compile errors went away. pSZ-serializeAsElement(dval, Axis_URI_Ac_value, (void*)(param-dval), XSD_DOUBLE); pSZ-serializeAsElement(tval, Axis_URI_Ac_value, (void*)(param-tval), XSD_DATETIME); 3) I received warnings all over the place about peekedElementName not being used (unreferenced). So, I removed the lines: // We always use this... writer.write(\tconst char* peekedElementName;\n); And then where peekedElementName is used, I added this code: // We only peek for elements, not element attributes! if (attribs[i].isOptional() !attribs[i].isAttribute()) { writer.write(tab1 + \tconst char* peekedElementName + soapTagName + ;\n); writer.write(tab1 + peekedElementName + soapTagName + = pIWSDZ-peekNextElementName();\n); writer.write(tab1 + if (strcmp(peekedElementName + soapTagName + , \ + soapTagName + \) == 0)\n); writer.write(tab1 + {\n); tab2 += \t; } if (attribs[i].isOptional()) { writer.write(tab1 + \tconst char* peekedElementName + soapTagName + ;\n); writer.write(tab1 + peekedElementName + soapTagName + = pIWSDZ-peekNextElementName();\n); writer.write(tab1 + if (strcmp(peekedElementName + soapTagName + , \ + soapTagName + \) == 0)\n); tab2 += \t; } I had to append the soapTagName to the peekedElementName, otherwise I got re-definition errors. 4) The fourth issue I had is more specific to my wsdl and c++. I have a class called timezone, this caused compilation errors because timezone already exists in vc98\include\time.h. So, what I did was add a function to CUtils that formats the name of user defined types to start with a capital letter. I know this is ugly, but it works for me. I don't expect issue 4 to make it into the source tree, but I would like it if 1-3 could be considered for inclusion in the WSDL2Ws soap stub generator. -Ryan -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 2:02 PM To: Apache AXIS C User List Cc: Apache AXIS C User List Subject: RE: No answers? Using 1.5 and 1.6Beta is bad idea...yes, latest code in SVN is better than zip distributions. Nadir Amra Integrated Web services for i5/OS IBM Rochester, MN, (Tel. 507-253-0645, t/l 553-0645) Internet: [EMAIL PROTECTED] McCullough, Ryan [EMAIL PROTECTED] wrote on 05/22/2008 01:58:03 PM: Am I better off using the code in SVN rather than the zip distributions? Is using 1.5 a bad idea? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: No answers?
How difficult is the transition to move to Axis2? We are consuming both the Java and C++ Axis 1 library. We have also made some modifications to both. -Ryan -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 9:27 AM To: Apache AXIS C User List Subject: Re: No answers? McCullough, Ryan wrote: I have made a couple posts to this mailing list and have never received responses. Should I go elsewhere for questions regarding Axis 1 c++ 1.6b? I am out of touch with Axis 1 C++. Almost all the active developers around this list now are more into Axis2/C. Is it a possibility for you to try Axis2/C? Samisa... *Ryan McCullough* | *RightNow Technologies* | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] | http://www.rightnow.com http://www.rightnow.com/ No virus found in this incoming message. Checked by AVG. Version: 8.0.100 / Virus Database: 269.24.0/1459 - Release Date: 5/21/2008 5:34 PM - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: No answers?
Just clients. We are providing both Java and C++ clients, thus we are using the respective Axis 1 distribution. -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 10:07 AM To: Apache AXIS C User List Subject: Re: No answers? McCullough, Ryan wrote: How difficult is the transition to move to Axis2? We are consuming both the Java and C++ Axis 1 library. We have also made some modifications to both. Unfortunately transition is not straightforward. However if you have WSDLs for current services, you could try and generate C clients and services with WSDL2C. Are you using Axis 1 C++ for both services and clients or only clients? Samisa... -Ryan -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 9:27 AM To: Apache AXIS C User List Subject: Re: No answers? McCullough, Ryan wrote: I have made a couple posts to this mailing list and have never received responses. Should I go elsewhere for questions regarding Axis 1 c++ 1.6b? I am out of touch with Axis 1 C++. Almost all the active developers around this list now are more into Axis2/C. Is it a possibility for you to try Axis2/C? Samisa... *Ryan McCullough* | *RightNow Technologies* | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] | http://www.rightnow.com http://www.rightnow.com/ No virus found in this incoming message. Checked by AVG. Version: 8.0.100 / Virus Database: 269.24.0/1459 - Release Date: 5/21/2008 5:34 PM - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Samisa Abeysinghe Director, Engineering; WSO2 Inc. http://www.wso2.com/ - The Open Source SOA Company - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: No answers?
See the attached messages. -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 10:37 AM To: Apache AXIS C User List Subject: Re: No answers? I guess I must have missed the posts...can you post again? I do support the client part of Axis 1 C++, and answer questions when I can. However, if there are problems that I cannot easily reproduce then my standard answer is to first go to the latest code base (i.e. download source from svn and build it yourself via SVN) since 1.6beta is very, very old. Hopefully sometime in the future we will be releasing 1.6 final, but do not know when since I am kind swamped. Nadir Amra McCullough, Ryan [EMAIL PROTECTED] wrote on 05/22/2008 10:28:54 AM: I have made a couple posts to this mailing list and have never received responses. Should I go elsewhere for questions regarding Axis 1 c++ 1.6b? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http: //www.rightnow.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] ---BeginMessage--- How can I get header information from a response? soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:HeaderResponseHeader xmlns=urn:obj.api.rightnow.comVersion8.8.0.47/Version/ResponseHeader /soap:Header soap:Body exec_rv xmlns=urn:obj.api.rightnow.com xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; fatal_err_rv called_fcn/called_fcn data/data location api_loc_item fcncheck_ns/fcn filepair/xml_parser.c/file line579/line /api_loc_item /location msgError processing element 'ns2:SessionHeader'; 'ns2' is an invalid namespace prefix/msg type1/type xml_fcn_id xsi:nil=true / /fatal_err_rv /exec_rv /soap:Body /soap:Envelope I want to retrieve 8.8.0.47 from Version8.8.0.47/Version. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature ---End Message--- ---BeginMessage--- How are nullable types handled in Axis1 C++? For instance, how could I set an int/boolean/date/datetime attribute to xsi:nill=true? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.com http://www.rightnow.com/ smime.p7s Description: S/MIME cryptographic signature ---End Message--- smime.p7s Description: S/MIME cryptographic signature
RE: No answers?
As an update, I think I found answers to both questions. It looks like elements with minOccurs of 0 (nullable elements) are pointers. I exposed the response headers by adding some code to SoapDeSerializer.cpp and Call.cpp. Is there a better way? -Ryan -Original Message- From: McCullough, Ryan [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 12:51 PM To: Apache AXIS C User List Subject: RE: No answers? See the attached messages. -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 10:37 AM To: Apache AXIS C User List Subject: Re: No answers? I guess I must have missed the posts...can you post again? I do support the client part of Axis 1 C++, and answer questions when I can. However, if there are problems that I cannot easily reproduce then my standard answer is to first go to the latest code base (i.e. download source from svn and build it yourself via SVN) since 1.6beta is very, very old. Hopefully sometime in the future we will be releasing 1.6 final, but do not know when since I am kind swamped. Nadir Amra McCullough, Ryan [EMAIL PROTECTED] wrote on 05/22/2008 10:28:54 AM: I have made a couple posts to this mailing list and have never received responses. Should I go elsewhere for questions regarding Axis 1 c++ 1.6b? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http: //www.rightnow.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: No answers?
Am I better off using the code in SVN rather than the zip distributions? Is using 1.5 a bad idea? -Original Message- From: Nadir Amra [mailto:[EMAIL PROTECTED] Sent: Thursday, May 22, 2008 10:37 AM To: Apache AXIS C User List Subject: Re: No answers? I guess I must have missed the posts...can you post again? I do support the client part of Axis 1 C++, and answer questions when I can. However, if there are problems that I cannot easily reproduce then my standard answer is to first go to the latest code base (i.e. download source from svn and build it yourself via SVN) since 1.6beta is very, very old. Hopefully sometime in the future we will be releasing 1.6 final, but do not know when since I am kind swamped. Nadir Amra McCullough, Ryan [EMAIL PROTECTED] wrote on 05/22/2008 10:28:54 AM: I have made a couple posts to this mailing list and have never received responses. Should I go elsewhere for questions regarding Axis 1 c++ 1.6b? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http: //www.rightnow.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: Accessing header in response
I forgot to mention I am using Axis C++ 1.6b (not version 2). From: McCullough, Ryan Sent: Tuesday, May 20, 2008 3:18 PM To: Apache AXIS C User List Subject: Accessing header in response How can I get header information from a response? soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:HeaderResponseHeader xmlns=urn:obj.api.rightnow.comVersion8.8.0.47/Version/ResponseHeader /soap:Header soap:Body exec_rv xmlns=urn:obj.api.rightnow.com xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; fatal_err_rv called_fcn/called_fcn data/data location api_loc_item fcncheck_ns/fcn filepair/xml_parser.c/file line579/line /api_loc_item /location msgError processing element 'ns2:SessionHeader'; 'ns2' is an invalid namespace prefix/msg type1/type xml_fcn_id xsi:nil=true / /fatal_err_rv /exec_rv /soap:Body /soap:Envelope I want to retrieve 8.8.0.47 from Version8.8.0.47/Version. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.com http://www.rightnow.com/ smime.p7s Description: S/MIME cryptographic signature
Accessing header in response
How can I get header information from a response? soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:HeaderResponseHeader xmlns=urn:obj.api.rightnow.comVersion8.8.0.47/Version/ResponseHeader /soap:Header soap:Body exec_rv xmlns=urn:obj.api.rightnow.com xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; fatal_err_rv called_fcn/called_fcn data/data location api_loc_item fcncheck_ns/fcn filepair/xml_parser.c/file line579/line /api_loc_item /location msgError processing element 'ns2:SessionHeader'; 'ns2' is an invalid namespace prefix/msg type1/type xml_fcn_id xsi:nil=true / /fatal_err_rv /exec_rv /soap:Body /soap:Envelope I want to retrieve 8.8.0.47 from Version8.8.0.47/Version. -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature
How are nullable values handled?
How are nullable types handled in Axis1 C++? For instance, how could I set an int/boolean/date/datetime attribute to xsi:nill=true? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.com http://www.rightnow.com/ smime.p7s Description: S/MIME cryptographic signature
RE: How are nullable values handled?
Any ideas? From: McCullough, Ryan [mailto:[EMAIL PROTECTED] Sent: Thursday, April 10, 2008 11:42 AM To: axis-c-user@ws.apache.org Subject: How are nullable values handled? How are nullable types handled in Axis1 C++? For instance, how could I set an int/boolean/date/datetime attribute to xsi:nill=true? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.com http://www.rightnow.com/ smime.p7s Description: S/MIME cryptographic signature
How are nullable values handled?
How are nullable types handled in Axis1 C++? For instance, how could I set an int/boolean/date/datetime attribute to xsi:nill=true? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature
RE: xml:id does not want to work
Written up as AXIS-2735. https://issues.apache.org/jira/browse/AXIS-2735 -Original Message- From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] Sent: Thursday, April 10, 2008 2:52 PM To: axis-user@ws.apache.org Subject: Re: xml:id does not want to work Please file a JIRA. On Tue, Apr 8, 2008 at 12:31 PM, McCullough, Ryan [EMAIL PROTECTED] wrote: Anne, Thank you for looking at my issue. I added that namespace (I tried both the xs:schema and xs:import) and it still does not generate the xml:id attribute in the objects. -Ryan -Original Message- From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] Sent: Tuesday, April 08, 2008 8:33 AM To: axis-user@ws.apache.org Subject: Re: xml:id does not want to work You need to also declare the xml namespace prefix: xmlns:xml=http://www.w3.org/XML/1998/namespace; Anne On Mon, Apr 7, 2008 at 1:44 PM, McCullough, Ryan [EMAIL PROTECTED] wrote: In my wsdl, I am importing an xsd schema file. That xsd file has an import: xs:schema elementFormDefault=qualified xmlns:xs=http://www.w3.org/2001/XMLSchema; xmlns=urn:sanitized xmlns:rnt=urn:sanitized targetNamespace=urn:sanitized xs:import namespace=http://www.w3.org/XML/1998/namespace; schemaLocation=xml.xsd / xml.xsd comes from http://www.w3.org/2001/xml.xsd. I then declare a base object that several other objects extend. xs:complexType name=api_base xs:attribute ref=xml:id / xs:attribute ref=attr2 / xs:attribute ref=attr3 / xs:attribute name=attr4 type=xs:base64Binary / /xs:complexType xs:complexType name=contact xs:complexContent xs:extension base=api_base xs:sequence !-Attributes go here-- /xs:sequence /xs:extension /xs:complexContent /xs:complexType The problem is that Axis does not seem to like the xml:id. The xml:id attribute is not declared in objects. Ideas? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
RE: xml:id does not want to work
Anne, Thank you for looking at my issue. I added that namespace (I tried both the xs:schema and xs:import) and it still does not generate the xml:id attribute in the objects. -Ryan -Original Message- From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] Sent: Tuesday, April 08, 2008 8:33 AM To: axis-user@ws.apache.org Subject: Re: xml:id does not want to work You need to also declare the xml namespace prefix: xmlns:xml=http://www.w3.org/XML/1998/namespace; Anne On Mon, Apr 7, 2008 at 1:44 PM, McCullough, Ryan [EMAIL PROTECTED] wrote: In my wsdl, I am importing an xsd schema file. That xsd file has an import: xs:schema elementFormDefault=qualified xmlns:xs=http://www.w3.org/2001/XMLSchema; xmlns=urn:sanitized xmlns:rnt=urn:sanitized targetNamespace=urn:sanitized xs:import namespace=http://www.w3.org/XML/1998/namespace; schemaLocation=xml.xsd / xml.xsd comes from http://www.w3.org/2001/xml.xsd. I then declare a base object that several other objects extend. xs:complexType name=api_base xs:attribute ref=xml:id / xs:attribute ref=attr2 / xs:attribute ref=attr3 / xs:attribute name=attr4 type=xs:base64Binary / /xs:complexType xs:complexType name=contact xs:complexContent xs:extension base=api_base xs:sequence !-Attributes go here-- /xs:sequence /xs:extension /xs:complexContent /xs:complexType The problem is that Axis does not seem to like the xml:id. The xml:id attribute is not declared in objects. Ideas? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | [EMAIL PROTECTED] | http://www.rightnow.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME cryptographic signature
Change the way classes are named
I am using both the Java and C++ version of Axis. When I use the Java version to generate the soap objects for the client, they are named with the first letter being capitalized. Is there a simple way to have the WSDL2WS tool do the same for C++ client objects? -Ryan Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature
xml:id does not want to work
In my wsdl, I am importing an xsd schema file. That xsd file has an import: xs:schema elementFormDefault=qualified xmlns:xs=http://www.w3.org/2001/XMLSchema; xmlns=urn:sanitized xmlns:rnt=urn:sanitized targetNamespace=urn:sanitized xs:import namespace=http://www.w3.org/XML/1998/namespace; schemaLocation=xml.xsd / xml.xsd comes from http://www.w3.org/2001/xml.xsd. I then declare a base object that several other objects extend. xs:complexType name=api_base xs:attribute ref=xml:id / xs:attribute ref=attr2 / xs:attribute ref=attr3 / xs:attribute name=attr4 type=xs:base64Binary / /xs:complexType xs:complexType name=contact xs:complexContent xs:extension base=api_base xs:sequence !-Attributes go here-- /xs:sequence /xs:extension /xs:complexContent /xs:complexType The problem is that Axis does not seem to like the xml:id. The xml:id attribute is not declared in objects. Ideas? Ryan McCullough | RightNow Technologies | Integration Tools Engineer 406-556-3162 office | Bozeman, MT | mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] | http://www.rightnow.com/ http://www.rightnow.com smime.p7s Description: S/MIME cryptographic signature