Return-Path: Delivered-To: apmail-ws-axis-dev-archive@www.apache.org Received: (qmail 90459 invoked from network); 12 Dec 2008 18:49:17 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 12 Dec 2008 18:49:17 -0000 Received: (qmail 26455 invoked by uid 500); 12 Dec 2008 18:49:28 -0000 Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 26425 invoked by uid 500); 12 Dec 2008 18:49:27 -0000 Mailing-List: contact axis-dev-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@ws.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list axis-dev@ws.apache.org Received: (qmail 26416 invoked by uid 99); 12 Dec 2008 18:49:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 12 Dec 2008 10:49:27 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of deepalk@gmail.com designates 209.85.221.15 as permitted sender) Received: from [209.85.221.15] (HELO mail-qy0-f15.google.com) (209.85.221.15) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 12 Dec 2008 18:49:05 +0000 Received: by qyk8 with SMTP id 8so2161577qyk.16 for ; Fri, 12 Dec 2008 10:48:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :x-enigmail-version:content-type:content-transfer-encoding; bh=AR6WCbquKNdWgEjdmpwKr0y/bt7arooPxSXsNWpKhRs=; b=boXT3mpISaPAR7b1eloXqRNAjJwrAOcgglEcuvBDnmLXf910Xo7lrxGzfBJFhOaOJA D3itwr8kcA+WVBOEwmGQHg/XoiEm5jT+BnfjUXjav7YaeeD3lFB21Xx0aU1kCGXLCFBd 6Xh1qsj02xbUTKkFfhQsqLR7qgVJbwhcVnBUw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=jphfzwL2e6ujsDJk+7q/bR3dHWAiRqVgBcH8dwNtW38yhZUtlMXPhiXYr0fKrl074G Ie82HeAIb8eCe1vV237Xf+Xxrp+OxXzdCeSf6hgR1ZVTk6NBQZSWxHK4dXjJMyrNhGXL yQe2cgVhbh2kOMAGwLOFcsvz1Y98NU0AKRF8Y= Received: by 10.215.38.17 with SMTP id q17mr5658757qaj.32.1229107724770; Fri, 12 Dec 2008 10:48:44 -0800 (PST) Received: from ?192.168.1.100? (adsl-219-47-61.asm.bellsouth.net [68.219.47.61]) by mx.google.com with ESMTPS id 5sm975323ywd.11.2008.12.12.10.48.43 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 12 Dec 2008 10:48:44 -0800 (PST) Message-ID: <4942B20B.1070405@gmail.com> Date: Fri, 12 Dec 2008 13:48:43 -0500 From: Deepal jayasinghe User-Agent: Thunderbird 2.0.0.18 (Windows/20081105) MIME-Version: 1.0 To: axis-dev@ws.apache.org Subject: Re: Looking into open issue 3364 References: <49427410.40607@gmail.com> <4942AF6A.4090704@thoughtcraft.com> In-Reply-To: <4942AF6A.4090704@thoughtcraft.com> X-Enigmail-Version: 0.95.7 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Hi Glen, > >> As I mentioned in the JIRA, I did a local fix and get that working, >> however most of the java2wsdl and some runtime code generation tests >> failed. So I did not commit the changes. My changes only involve in >> SchemaGenerator, and it is very simple fix. Only thing is to make sure >> you get the test cases working. Currently for any input type it sets >> minoccurs to 0 , so you just need to change that to 1. > > So you're saying we shouldn't support optional parameters, and > therefore we should be throwing an exception for missing parameters? > And we shouldn't be able to pass null values? Hmm... Well I was referring to generate WSDL to cope with RPC MR. I agree with you, but to handle those we need to fix the RPC MR. So my suggestion was to get what working right, and then address the improvements later. > > I think we should be able to be as expressive and simple as possible > in making our schemas align with the Java structure - and supporting > missing wire parameters which will become null values for Object types > certainly seems reasonable toward that end. Agreed. But if you put minoccurs=0 , that's mean it is possible that parameter not appear in the request. Of course we handle nillable correctly. In my understanding nillable and minoccurs are two different things (please correct me if I am wrong) > > In other words, IMO we should support on the server side: > > Type Result if missing Schema > ---------------------------------------------------------- > primitive exception minOc=1 +1, but we need to burn schema aware passing logic into RPC MR. > Object null minOc=0 Nope, here we need to add additional "nillable=true" attribute for complex types. > > Also, this way if the client wants to send a null there's a way to do > it (don't include the param). > > This doesn't seem that hard to do, and I think it makes for nicer REST > URLs and SOAP messages in some cases. > > Thoughts? > > --Glen > -- Thank you! http://blogs.deepal.org