Bucky, The aegis mapping stuff has nothing to do with beans. Actually I dont think there is a bean for the aegis mapping XML files..they are just read with stax and actions are performed as they are read.. Aegis works with the "element"s of the DOM too in order to find the componentType and any other property.
So if you want to use aegis you MUST create your mapping file, just as the docs specify it. I still think you are mixing concepts here. I suggest you re-read the documentation on aegis mapping. Cheers Andres Bernasconi On 12/14/06, Bucky Jordan <[EMAIL PROTECTED]> wrote:
XBean is a method of intermixing Spring and XFire configuration in the same xml file – the XFire docs talk about it here: http://xfire.codehaus.org/Spring%2C+XBean%2C+Servlets+and+more It appears to me that I should be able to configure any XFire settings this way, but I haven't tried it yet- anyone else have any experience with XBean/Spring/XFire? This might be a better question for the –dev list, but does anyone know if there is a particular reason setting componentType stuff isn't supported via a Spring Bean? Is there any interest in adding it, and if so, can someone who is familiar with the XFire code possibly give some hints as to how one could go about writing up a patch to do this? Currently we have a multiple module build, and our business module is independent of any third party libraries. Although aegis looks to work nice, I'd prefer to not have to maintain those in the business module (since the .aegis.xml files are required to live alongside the class they map). We have another module for web services, and the nice thing about using Spring Beans is we don't have to provide separate interfaces on top of the business module (which already has its own interfaces). Thanks, Bucky ------------------------------ *From:* Andres Bernasconi [mailto:[EMAIL PROTECTED] *Sent:* Thursday, December 14, 2006 3:44 PM *To:* [email protected] *Subject:* Re: [xfire-user] Hash Map with Spring Bean Sorry but I do not know what XBean is, and if is part of xfire I havent use it directly / explicitly. a) If you want to exclude two methods, then you must have two methodBean declarations as you did before.. but no need to specify the componentType or any mapping stuff. Remember that Spring injects properties into the beans, so if the bean (MethodBean in this case) does not have such property, then you cant "set it". b) I actually don't see what is the problem with aegis... personally I found it the easiest way to work with mappings..it is very flexible and is part of xfire..I'm loving it. On 12/14/06, *Bucky Jordan* <[EMAIL PROTECTED]> wrote: Andreas, That's what I was afraid of. I was trying to avoid having to put aegis binding files in my service packages. I suppose another option would be to use XBean? Or is the only way to do this sort of thing an aegis mapping file? > (And remove the second MethodBean from that declaration, since it is not required) But I do need two MethodBean declarations if I want to exclude two methods, correct? I suppose going with XBean would clean up this config quite a bit anyhow, and I should be able to use all the aegis mapping examples/docs as given for the most part, correct? (Are there any particular features I wouldn't be able to use with XBean?) Thanks again for your quick response. Bucky ________________________________________ From: Andres Bernasconi [mailto:[EMAIL PROTECTED] Sent: Thursday, December 14, 2006 8:37 AM To: [email protected] Subject: Re: [xfire-user] Hash Map with Spring Bean I see now what is going on. The thing is that you should not add that bean declaration there. Create a mapping file for the bean. The idea of configuring the MethodBean is just to be able to exlude a method from your bean. I suggest you go again to the Aegis binding documentation and read about creating the mapping files. (And remove the second MethodBean from that declaration, since it is not required) On 12/14/06, Bucky Jordan <[EMAIL PROTECTED]> wrote: Andres, Sorry, guess I was being a little vague there. Here's my bean definition: <bean id="NetworkWs" class="org.codehaus.xfire.spring.remoting.XFireExporter"> <property name="serviceFactory"> <ref bean="xfire.serviceFactory" /> </property> <property name="xfire"> <ref bean="xfire" /> </property> <property name="serviceBean"> <ref bean="networkService" /> </property> <property name="serviceClass" value="com.report.service.network.NetworkService" /> <property name="methods"> <list> <bean class="org.codehaus.xfire.spring.config.MethodBean"> <property name="name" value="setRouterDao" /> <property name="exclude" value="true" /> </bean> <bean class=" org.codehaus.xfire.spring.config.MethodBean"> <property name="name" value="getRouterSummary" /> <property name="keyType" value="org.codehaus.xfire.Name" /> <property name="componentType" value="org.codehaus.xfire.Present " /> </bean> </list> </property> </bean> When I try to start the app, it gives me an exception, the gist of which is: Invalid property 'keyType' of bean class [ org.codehaus.xfire.spring.config.MethodBean ]: Bean property 'keyType' is not writable or has an invalid setter method. I'm not clear on how this line of the example translates for a Spring Bean using the XFireExporter: <method...> <return-type keyType=" org.codehaus.xfire.NiceChild" componentType=" org.codehaus.xfire.Present"> </method> Thanks for your help and patience, Bucky ________________________________________ From: Andres Bernasconi [mailto: [EMAIL PROTECTED] Sent: Wednesday, December 13, 2006 7:45 AM To: [email protected] Subject: Re: [xfire-user] Hash Map with Spring Bean What do you mean with "with a spring bean"? I use "spring beans" as well, and that documentation works like a charm On 12/12/06, Bucky Jordan < [EMAIL PROTECTED]> wrote: Andreas, Thanks for the pointer, but I did look over that section (in fact, that's where the example I mentioned came from). My question was specifically related to how to do this with Spring Beans. I looked at org.codehaus.xfire.spring.config.*, and MessageBean in particular, but I didn't see a way to specify keyType. Guess I'll play around a bit with the MessageBean property name/values... but if anyone can point me to an example using return-type, keyType and componentType all for one method with a Spring Bean, it would be much appreciated. Thanks, Bucky ________________________________________ From: Andres Bernasconi [mailto:[EMAIL PROTECTED] Sent: Monday, December 11, 2006 8:22 AM To: [email protected] Subject: Re: [xfire-user] Hash Map with Spring Bean Does'nt this meet your requirements? http://xfire.codehaus.org/Mapping+collections On 12/8/06, Bucky Jordan < [EMAIL PROTECTED]> wrote: I have my services mapped using spring beans, and am using exclude and a few other things just fine. However, I was wondering if there's a way to do the following with a spring bean so I can support HashMaps: <mappings> <mapping> <method name="getGiftList"> <return-type keyType="org.codehaus.xfire.NiceChild" componentType="org.codehaus.xfire.Present"> </method> </mapping> </mappings> I don't see a way to specify keyType... I read the JavaDocs, but there's not much (anything) there. Also, what is MethodBean.getMep? If this isn't supported, how hard would it be to add, and would it be something a relatively new user to xFire could do? (I assume it basically involves adding a method to MethodBean which passes the config off to the same place .aegis.xml goes...)? Thanks for the help, Bucky --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email
