The following snippet of tapestry.services.xml (from
Tapestry-framework-4.1.jar) suggests that to override the factory
services you should add services with the same ID of the ones you want
to override to the configuration point
tapestry.services.ApplicationServices.

Maybe an interceptor is more appropriate for your needs, i don't know
much about interceptors (yet).

----- snippet from tapestry.services.xml ---------

<configuration-point id="ApplicationServices" schema-id="EngineServices">

Configuration point for application services. Each contributed service
must have a unique name, but services contributed here will override
services provided in the FactoryServices configuration point.

</configuration-point>

----- snip -------

Francesco Degrassi

Jesse Kuhnert wrote:
> It sounds like you are not allowed to "contribute" more than one
> service name with the same id for this particular configuration point.
> 
> Maybe what you need to do is define what object is returned from the
> tapestry.services.Home service point via
> http://hivemind.apache.org/descriptor.html#implementation .
> 
> Of course it sounds like a much easier option might be to use an
> interceptor to just wrap all of the core services, if that's all you
> needed to do. http://hivemind.apache.org/descriptor.html#interceptor
> 
> On 11/23/06, Patrick Moore <[EMAIL PROTECTED]> wrote:
>> Hi --
>>
>> I am trying to wrap some engine service by replacing the configuration
>> point, tapestry.services.FactoryServices with this definition:
>>
>>     <contribution
>> configuration-id="service:tapestry.services.FactoryServices">
>>         <service name="home" object="service:tapestry.services.Home" />
>>         <service name="direct"
>> object="service:transactionalDirectService" />
>>         <service name="page" object="service:transactionalPageService" />
>>         <service name="reset" object="service:tapestry.services.Reset" />
>>         <service name="restart"
>> object="service:tapestry.services.Restart" />
>>         <service name="asset" object="service:tapestry.services.Asset" />
>>         <service name="external"
>> object="service:tapestry.services.External" />
>>     </contribution>
>>
>> I did something similiar to this to replace
>> tapestry.services.ResponseContributors:
>>
>>     <contribution
>> configuration-id="tapestry.services.ResponseContributors">
>>         <invoker object="service:ScriptResponseContributor" />
>>         <invoker
>> object="service:tapestry.services.JSONResponseContributor" />
>>         <invoker
>> object="service:tapestry.services.DojoAjaxResponseContributor" />
>>         <invoker
>> object="service:tapestry.services.DefaultResponseContributor" />
>>     </contribution>
>>
>> but for the factoryservices I get :
>>
>> Error building service transparentpolitics.sessionFactory: Error at
>> context:/WEB-INF/hivemodule.xml, line 76, column 87: Unable to
>> construct service tapestry.services.ServiceMap: Error building service
>> tapestry.services.ServiceMap: Error at
>> jar:file:/C:/Documents%20and%20Settings/Owner/.m2/repository/org/apache/tapestry/tapestry-framework/4.1.1-SNAPSHOT/tapestry-framework-4.1.1-SNAPSHOT.jar!/META-INF/tapestry.services.xml,
>>
>> line 159, column 81: Unable to initialize service
>> tapestry.services.ServiceMap (by invoking method initializeService on
>> org.apache.tapestry.services.impl.ServiceMapImpl): Unable to construct
>> configuration tapestry.services.FactoryServices: Element service (at
>> context:/WEB-INF/transpol.persistence.xml, line 47, column 72)
>> contains errors: Value for attribute 'name' ('home') duplicates a
>> prior instance at
>> jar:file:/C:/Documents%20and%20Settings/Owner/.m2/repository/org/apache/tapestry/tapestry-framework/4.1.1-SNAPSHOT/tapestry-framework-4.1.1-SNAPSHOT.jar!/META-INF/tapestry.services.xml,
>>
>> line 53, column 54.
>>
>>
>> Does anyone have any ideas on how I can do this service wrapping?
>>
>> -Pat
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to