[email protected] wrote on 12/01/2005 05:20:32 PM:
> > Implemented (except for "constructor" and autodetect values).
> >
> > Does this mean that I can not turn it off for constructors and autodetect?
>
> No, it means we didn't implement those two "types" of autowiring. It's
> pretty much "byName" only (keep in mind that autowiring for
> constructor-args *is* supported, but only byName).
>
>
> >
> > for example
> >
> > <bean id="sqlDsn" class="com.amkor.global.dao.dsn" singleton="true"
> > lazy-init="false" autowire="no">
> > <constructor-arg
> > name="dsn"><value>misc_billing_sql</value></constructor-arg>
> > </bean>
> >
> > But coldspring seem to still be attempting to autowire this thing.
> >
>
> I'm confused... do you mean that ColdSpring is calling other setters
> on com.amkor.global.dao.dsn that match the signatures of other
> <bean/>s in the factory? Or do you mean that you're trying to prevent
> it from passing in the dsn to the constructor?
>
I want it to pass the dsn I have in the <construtor-arg> to the constructor (and it does), but it is still inspecting the functions and attempting to determine if it can autowire anythingelse. I dicsovered this as I had a quick dirty implemnation of the dsn where the type was not set on some methods
<cfcomponent output="false" >
<cfscript>
variables.dsn = "";
variables.username = "";
variables.password = "";
</cfscript>
<cffunction name="Init" access="public" output="false">
<cfargument name="dsn" type="string" required="false" default="#variables.dsn#" hint="I am the cf dsn to use" />
<cfargument name="username" type="string" required="false" default="#variables.username#" hint="I am the username to override the cf dsn" />
<cfargument name="password" type="string" required="false" default="#variables.password#" hint="I am the password to override the cf dsn" />
<cfset variables.dsn = arguments.dsn />
<cfset variables.username = arguments.username />
<cfset variables.password = arguments.password />
<cfreturn this />
</cffunction>
<cffunction name="SetDSN" access="public" return="void" output="false" hint="Set property: DSN">
<cfargument name="value" />
<cfset variables.dsn = arguments.value />
</cffunction>
<cffunction name="GetDSN" access="public" return="string" output="false" hint="Get property: DSN">
<cfreturn variables.dsn />
</cffunction>
<cffunction name="SetUsername" access="public" return="void" output="false" hint="Set property: Username">
<cfargument name="value" />
<cfset variables.Username=arguments.value />
</cffunction>
<cffunction name="GetUsername" access="public" return="string" output="false" hint="Get property: Username">
<cfreturn variables.Username />
</cffunction>
<cffunction name="SetPassword" access="public" return="void" output="false" hint="Set property: Password">
<cfargument name="value" />
<cfset variables.Password=arguments.value />
</cffunction>
<cffunction name="GetPassword" access="public" return="string" output="false" hint="Get property: Password">
<cfreturn variables.Password />
</cffunction>
</cfcomponent>
Notice on the setPassword method the value arg does not have a type. This caused coldSpring to error on line 213 of BeanDefinition.cfc. No biggie, I got that figured out and followed best pratices, but I would think that if I told it to not autowire then it should not inspect my cfc at all?
> Let me know, but regardless, I wouldn't be surprised if there was some
> autowiring funkiness. It's been thru a few iterations, but it really
> needs to be cleaned up once more.
>
> -Dave
>
>
Best Regards,
Adam Crump
Sr. Analyst - Programmer
Web Services - ICS
Amkor Technology
- [coldspring-dev] turn off Autowire Adam Crump
- [coldspring-dev] turn off Autowire Dave Ross
- [coldspring-dev] turn off Autowire Adam Crump
- [coldspring-dev] turn off Autowire Dave Ross
- [coldspring-dev] turn off Autowire Adam Crump
- [coldspring-dev] turn off Autowire Dave Ross
