I'll let you two hash that one out :)

I was just hoping I was missing an easy way to get CAS to use my service 
factory implementations instead of the built in versions and if not to test the 
waters for a feature request to add the ConditiinalOnMissingBean annotation to 
the argument extractor.

> On Jun 23, 2017, at 4:24 PM, [email protected] wrote:
> 
> I'll just add my 2c. here.
> 
> The "CAS5 overlay is the hell for deployers..." is of course a highly 
> subjective statement. First and foremost, CAS5 generation was designed with 
> ease of deployment and "intention-driven configuration" model in mind, and 
> NOT as a software "leaking" its internals to everyone enabling them to 
> "easily" re-write every aspect of it.
> 
> Second, the Spring annotation-based configuration model is very much a modern 
> DI that STILL enables you to wire, re-wire, inject, re-inject, and all that 
> other goodness of Spring DI if you desire to - just in the more powerful and 
> modern fashion. Besides, if you HAVE TO for whatever reason re-implement and 
> re-wire dozens of CAS classes, why not let Java instead of XML assemble them 
> together in a type-safe fashion.
> 
> And finally, here's a good blog post touching upon the rational behind CAS5 
> config design decisions: 
> https://apereo.github.io/2017/02/21/cas-autocfg-strategy/
> 
> Good weekend!
> 
> D.
> 
>> On Jun 23, 2017, 18:19 -0400, Yaroslav Panych <[email protected]>, wrote:
>> Well,sometimes redefining bean in deployerContextConfig.xml works.
>> Just override configuration itself. Copy it from cas sources into your
>> project, modify and build it. Final .war will contain your .class in
>> root(/WEB-INF/classes/..), which has higher priority than one packed
>> in .jar. Unfortunatelly it is only possible way to customize
>> cas(except forking), since devs got rid of xml spring context
>> configurations. I already have patched two dozens of classes this way
>> in cas 5.0.x branch. In modern cas Spring plays role of web framework,
>> but not as component (de)coupling mechanism, since component wiring
>> hardcoded into class files, and cannot be done in xml files by
>> declareing new bean and changing references. Overlay method of using
>> cas is actually hell for customizer. Every other bean you have
>> override using described here method, becuase other methods to patch
>> components DI are not working. The same can be applied for
>> login-webflow.xml - it is almost empty, most states are dynamically
>> build during cas startup, and it is impossible to control flow.
>> 
>> 2017-06-24 0:30 GMT+03:00 Geoff <[email protected]>:
>>> Hello,
>>> 
>>> I'd like to implement my own version of WebApplicationServiceFactory and
>>> SamlServiceFactory in CAS 5.1.0 however I don't see a way to make CAS my
>>> implementations instead of the out of the box versions.
>>> 
>>> In my CAS 4 implementation this was accomplished by specifying custom
>>> ArgumentExtractors in argumentExtractorsConfiguration.xml. In CAS 5 it
>>> looks like a single argument extractor is defined in CasCoreWebConfiguration
>>> and it effectively uses ServiceFactories found on any configuration classes
>>> that implement ServiceFactoryConfigurer. This provides a nice mechanism to
>>> add new ServiceFactories but I don't see a way to override the existing
>>> ones.
>>> 
>>> It seems like an easy way to allow this sort of customization would be to
>>> annotate the ArgumentExtractor defined in CasCoreWebConfiguration with
>>> ConditionalOnMissingBean so that it could be overriden. Or maybe I'm
>>> overlooking an easier way of modifying the behavior in
>>> WebApplicationServiceFactory and SamlServiceFactory?
>>> 
>>> Thanks!
>>> 
>>> Geoff
>>> 
>>> --
>>> - CAS gitter chatroom: https://gitter.im/apereo/cas
>>> - CAS mailing list guidelines:
>>> https://apereo.github.io/cas/Mailing-Lists.html
>>> - CAS documentation website: https://apereo.github.io/cas
>>> - CAS project website: https://github.com/apereo/cas
>>> ---
>>> You received this message because you are subscribed to the Google Groups
>>> "CAS Community" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an
>>> email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/e415701d-7aa7-46d9-b529-a27dfafd30f4%40apereo.org.
>> 
>> --
>> - CAS gitter chatroom: https://gitter.im/apereo/cas
>> - CAS mailing list guidelines: 
>> https://apereo.github.io/cas/Mailing-Lists.html
>> - CAS documentation website: https://apereo.github.io/cas
>> - CAS project website: https://github.com/apereo/cas
>> ---
>> You received this message because you are subscribed to the Google Groups 
>> "CAS Community" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAGbteJJncdf2Pn_V7ZwBGzsp%2BdfWShL-%3DBNZdW8OL5S6ApSeqw%40mail.gmail.com.
> 
> -- 
> - CAS gitter chatroom: https://gitter.im/apereo/cas
> - CAS mailing list guidelines: https://apereo.github.io/cas/Mailing-Lists.html
> - CAS documentation website: https://apereo.github.io/cas
> - CAS project website: https://github.com/apereo/cas
> --- 
> You received this message because you are subscribed to the Google Groups 
> "CAS Community" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/a/apereo.org/d/msgid/cas-user/dcaeb322-faf1-4229-9e7b-05e5b72bcdb8%40Spark.

-- 
- CAS gitter chatroom: https://gitter.im/apereo/cas
- CAS mailing list guidelines: https://apereo.github.io/cas/Mailing-Lists.html
- CAS documentation website: https://apereo.github.io/cas
- CAS project website: https://github.com/apereo/cas
--- 
You received this message because you are subscribed to the Google Groups "CAS 
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/apereo.org/d/msgid/cas-user/656533F2-C73E-46A6-BF39-25A64789B7CE%40gmail.com.

Reply via email to