My first response hasn't posted yet.  Hopefully this gets posted 
last.  I agree that the Flex wsdl approach is different than other 
technologies.  I'm moving from ASP.NET to Flex.  There the wsdl stub 
file is created and deployed with the application.  Good 
obfuscation.  You can still obfuscate with Flex.  But, you have to 
use fds or modify a config file (at least that's what I've read).

-TH

--- In [email protected], "Carson Hager" <[EMAIL PROTECTED]> 
wrote:
>
> DLL = DII
> 
> 
> Carson
> 
> ____________________________________________
>  
> Carson Hager
> Cynergy Systems, Inc.
> http://www.cynergysystems.com
>  
> Email:  [EMAIL PROTECTED]
> Office: 866-CYNERGY ext. 89
> Mobile: 1.703.489.6466
> 
> 
> 
> -----Original Message-----
> From: [email protected] <[email protected]>
> To: [email protected] <[email protected]>
> Sent: Thu Jun 29 16:43:04 2006
> Subject: RE: [flexcoders] Re: Embedding WSDL?
> 
> Hey Tim,
>  
> I'm very interested in what you said here.  I'm not exactly sure 
how your client application would seamlessly handle a web service 
API change.  It seems to me that ( at least in the majority of 
cases ) any WSDL change is going to cause changes in the client code 
that invokes the web service so you're looking at a client recompile 
regardless. I realize there may be certain cases where the client 
could be handling a result purely dynamically in which case you 
could avoid a recompile but I have to think that's the exception 
rather than the rule. Regardless, I'd be interested in hearing how 
you've worked around this.
>  
> Another piece of added value to building the WSDL into the client 
is that it allows you to turn off WSDL publication in production.  
This is especially value if you're trying to obfuscate your APIs to 
a web service on a public IP server.  Outside of the Flex world, 
this is a very common ( arguably the standard ) practice when 
deploying web services that are not designed for broad public 
consumption.
>  
> It's an interesting design choice that Flex needs WSDL at runtime. 
This is definitely out of the ordinary as it is not the case in the 
majority of technologies out there.  WSDL ( as was its predecessor 
IDL ) designed to be consumed at development time and to to generate 
langauge specifc stub classes to invoke the services at runtime. 
Typically WSDL and IDL are not used at runtime. The exceptions that 
I know of would be DLL calls in CORBA and then of course Flex.  
There's nothing saying it can't be used at runtime but most security 
audits that we have deal with would call this a glaring hole.
>  
> 
> Carson
> ____________________________________________
>  
> Carson Hager
> Cynergy Systems, Inc.
> http://www.cynergysystems.com <http://www.cynergysystems.com/> 
>  
> Email:  [EMAIL PROTECTED]
> Office:  866-CYNERGY
> Mobile: 1.703.489.6466
> 
>  
> 
> ________________________________
> 
> From: [email protected] 
[mailto:[EMAIL PROTECTED] On Behalf Of Tim Hoff
> Sent: Thursday, June 29, 2006 3:10 PM
> To: [email protected]
> Subject: [flexcoders] Re: Embedding WSDL?
> 
> 
> 
> That was my first thought Andrew, but I couldn't find the API to 
> ovverride. Anyways, at the end of the day, embedding wsdl isn't 
> generally a good idea. If you make a change to a webservice 
> operation on the server side, you would have to re-compile and re-
> deploy every Flex application that uses it. Otherwise the 
> applications would break. There goes the encapsulation. The extra 
> second or two needed to get the wsdl dynamically is acceptable 
> overhead if webservices is the chosen RPC.
> 
> -TH
> 
> --- In [email protected] <mailto:flexcoders%
40yahoogroups.com> , "Andrew Trice" <andrew.trice@> 
> wrote:
> >
> > In Flex 1.5, I was able to preload/embed wsdl into the swf by 
> overriding
> > the sendAndLoad method of the native XML object...
> > 
> > 
> > 
> > Take a look at my blog posting here to see how: 
> > 
> > https://www.cynergysystems.com/blogs/page/andrewtrice? 
<https://www.cynergysystems.com/blogs/page/andrewtrice?> 
> entry=override_nat
> > ive_object_methods_in
> > 
> > 
> > 
> > I don't think that this exact syntax will work in Flex 2 b/c you 
> can no
> > longer modify the prototype of a native object. In Flex 2, you 
> could
> > try extending the WebService object like this (although I have no
> > guarantee that this would work... I have not actually tried it). 
> Use
> > the EmbededWSDL class instead of the WebService class. You might 
> also
> > need to override the loadWsdl function.
> > 
> > 
> > 
> > package
> > 
> > {
> > 
> > import mx.rpc.soap.WebService;
> > 
> > 
> > 
> > public class EmbededWSDL extends WebService
> > 
> > {
> > 
> > 
> > 
> > public function EmbededWSDL(){
> > 
> > 
> > 
> > this.wsdl = "MY WSDL STRING";
> > 
> > super();
> > 
> > }
> > 
> > 
> > 
> > }
> > 
> > }
> > 
> > 
> > 
> > 
> > 
> > Hope that helps!
> > 
> > -Andy
> > 
> > 
> > 
> > _____________________________________
> > 
> > Andrew Trice
> > 
> > Cynergy Systems, Inc.
> > 
> > http://www.cynergysystems.com <http://www.cynergysystems.com> 
> > 
> > 
> > 
> > Blog: http://www.cynergysystems.com/blogs/page/andrewtrice 
<http://www.cynergysystems.com/blogs/page/andrewtrice> 
> > 
> > Email: andrew.trice@
> > 
> > Office: 866-CYNERGY 
> > 
> > 
> > 
> > ________________________________
> > 
> > From: [email protected] <mailto:flexcoders%
40yahoogroups.com>  
> [mailto:[email protected] <mailto:flexcoders%
40yahoogroups.com> ] On
> > Behalf Of Tim Hoff
> > Sent: Thursday, June 29, 2006 4:16 AM
> > To: [email protected] <mailto:flexcoders%
40yahoogroups.com> 
> > Subject: [flexcoders] Re: Embedding WSDL?
> > 
> > 
> > 
> > Kelly,
> > 
> > As Matt observed, I'm using a single AS class (Cairngorm 
> ServiceLocator)
> > for webservice calls. It's based on Jeff Tapper's DataManager 
> class:
> > 
> > http://jeff.mxdj.com/as3datamanagerfix.htm 
<http://jeff.mxdj.com/as3datamanagerfix.htm>  
> > 
> > I changed the logic to get the wsdl, when the application loads, 
> to cut
> > a few seconds off of the initial data call. It appears that once 
> the
> > wsdl is loaded, the webservice doesn't request it again for 
> subsequent
> > calls. If all of your calls are to the same webservice, there 
> would
> > only be one request for the wsdl. This would address your 
client's
> > concern about network traffic.
> > 
> > -TH
> > 
> > Note: You don't have to use AS. The same thing can be done with 
> mxml.
> > 
> > 
> > --- In [email protected] <mailto:flexcoders%
40yahoogroups.com> , "Kelly Birr" <kelly.fx@> wrote:
> > >
> > > thanks, I'll have to somehow centralize my web services into 
one
> > component,
> > > and find a way to mange getting the result events to the 
correct 
> place
> > > depending on what the user is doing.
> > > 
> > > - Kelly
> > > 
> > > _____ 
> > > 
> > > From: [email protected] <mailto:flexcoders%
40yahoogroups.com>  
> [mailto:[email protected] <mailto:flexcoders%
40yahoogroups.com> ]
> > On
> > > Behalf Of Matt Chotin
> > > Sent: Thursday, June 29, 2006 12:06 AM
> > > To: [email protected] <mailto:flexcoders%
40yahoogroups.com> 
> > > Subject: RE: [flexcoders] Re: Embedding WSDL?
> > > 
> > > 
> > > 
> > > We don't have WSDL caching right now. It sounds like your app 
> may call
> > for
> > > a strategy like a ServiceLocator where you put the WebService 
in 
> a
> > single
> > > location and refer to it from elsewhere. If you have 15 
> WebService
> > tags you
> > > will get 15 WSDL requests even if they are for the same WSDL. 
So 
> two
> > tags,
> > > less of a deal, 15, big pain. The DataServices approach that 
Tim 
> has
> > here
> > > is one example of a ServiceLocator.
> > > 
> > > 
> > > 
> > > Matt
> > > 
> > > 
> > > 
> > > _____ 
> > > 
> > > From: [email protected] <mailto:flexcoders%
40yahoogroups.com>  
> [mailto:[email protected] <mailto:flexcoders%
40yahoogroups.com> ]
> > On
> > > Behalf Of Tim Hoff
> > > Sent: Wednesday, June 28, 2006 9:49 PM
> > > To: [email protected] <mailto:flexcoders%
40yahoogroups.com> 
> > > Subject: [flexcoders] Re: Embedding WSDL?
> > > 
> > > 
> > > 
> > > I have the same question as Kelly. It seems that the initial 
> call 
> > > to a webservice is slower because of the wsdl. Subsequent 
calls 
> are 
> > > fine, but there is always an initial delay. I know, switch to 
> > > HTTPService or RemoteObject.
> > > 
> > > For the following code, I'm thinking that I could override the 
> > > loadWSDL() function, but the mx.rpc.soap.WebService API 
doesn't 
> > > appear in the framework. Is the API final? Is there a work-
> around 
> > > here?
> > > 
> > > public function DataServices(pri:PrivateClass, wsdl:String)
> > > {
> > > this.ws = new WebService();
> > > ws.wsdl = wsdl;
> > > ws.loadWSDL();
> > > ws.useProxy = false;
> > > ws.makeObjectsBindable = false;
> > > }
> > > 
> > > Thank you,
> > > -TH
> > > 
> > > --- In [EMAIL PROTECTED] <mailto:flexcoders%
40yahoogroups.com>
> > ups.com,
> > > "Kelly Birr" kelly.fx@ wrote:
> > > >
> > > > Is it possible to somehow embed WSDL in the compiled SWF, or 
> > > read/write the
> > > > actual WSDL directly to the web services without them having 
> to 
> > > request it
> > > > via HTTP at runtime? Can I bind the WSDL to a string that I 
> > > manually
> > > > request via UrlLoader?
> > > > 
> > > > Along with that if I have 15 different web service tags on 
> > > different MXML
> > > > components of my application that all call the same web 
> service 
> > > with the
> > > > exact same WSDL Uri, will the WSDL cache? or will each Web 
> Service 
> > > instance
> > > > make a request for the WSDL via HTTP when it is initialized.
> > > > 
> > > > My client is very concerned that the application may be 
> > > too "chatty" on
> > > > their network and it seems that these WSDL requests may be 
> part of 
> > > the
> > > > problem. I'm using Flex 2.0 RTM.
> > > > 
> > > > - Kelly
> > > >
> > >
> >
>






------------------------ Yahoo! Groups Sponsor --------------------~--> 
Check out the new improvements in Yahoo! Groups email.
http://us.click.yahoo.com/6pRQfA/fOaOAA/yQLSAA/nhFolB/TM
--------------------------------------------------------------------~-> 

--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to