Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [wtp-dev] Modelling multiple runtimes in one server


Konstantin probably has a better answer than I, but the simple answer is that your choices are either 'all', or 'opt in'.

If your new facet is something that all servers inherently support, you can use * in your runtime mapping so that all servers will support the facet immediately. If your new facet doesn't work on all servers, requires checking if a jar is available, or at a minimum someone needs to say "yes, this server supports that", then you need to use the server id static (or dynamic) mapping. You can create mappings for as many servers as you're aware of and don't need to duplicate anything, since these extension points can be created by a 'third-party' and included in any plugin. However, since someone needs to explicitly decide, there will always be cases where a server you didn't know about supports your facet but the tools don't allow it until someone adds the extension.

It's incredibly hard to create a system that can cover cases like these well - e.g. where you create a new facet in your adopter product and it should automatically work with some but not all servers in a completely different and unknown adopter product. If you have any suggestions on how to extend or improve on this, Konstantin & I are always available in bugzilla too.

Thanks,
Tim deBoer
deboer@xxxxxxxxxx



From: "Max Rydahl Andersen" <max.andersen@xxxxxxxxxx>
To: "General discussion of project-wide or architectural issues." <wtp-dev@xxxxxxxxxxx>
Date: 09/23/2008 04:36 PM
Subject: Re: [wtp-dev] Modelling multiple runtimes in one server





On Tue, 23 Sep 2008 20:44:18 +0200, Tim deBoer <deboer@xxxxxxxxxx> wrote:

> Hi Max,
>
> Responding to your questions:
>
>> > The runtime components extension point is used in every server adapter
>
>> > to declare the component that represents the core application server.
>>
>> Yes, but it is not used for something *usefull* as far as I can see ;)
>
> Not unless you consider allowing users to target a facetted project to
> your server. ;) All servers need to use one mechanism or the other (or a
> combination of both) to accept standard WTP facetted projects. The  
> benefit
> of this extension is that it is simple, static, and lightweight.

They only use it to declare "yay-i can have my stuff and java stuff"  
associated with me.

My "fear" is that if I add these kind of runtimes for parts of our  
functionallity in JBoss Tools
I will no longer be able to use the runtime dependent parts on other App  
servers because they
don't declare the same runtime facilities...and then I have a bigger  
problem than what I started with
(lockin of features to JBoss AS that shouldn't require a lockin)

I could of course duplicate all major WTP server adopters and include the  
runtime support but
that will be very confusing for users.

>> > The internalRuntimeComponentProviders extension point is not used in
> WTP
>> > directly, but is used in several adopter products from different
>> > companies.
>>
>> Anyone of these with source available to see it being used ?
>
> None that I am aware of post source, and all of the server adapters
> included in WTP use the static linking above. This extension point is
> fairly straightforward to use though, and Konstantin's blog contains a
> full sample.

Yes, I understand the sample; but i'm looking to understand how these  
other vendors avoid
feature lock-in (maybe they don't care ? :)

/max

> Tim deBoer
> deboer@xxxxxxxxxx
>
>
>
> From:
> "Max Rydahl Andersen" <max.andersen@xxxxxxxxxx>
> To:
> "konstantin.komissarchik@xxxxxxxxxx"  
> <konstantin.komissarchik@xxxxxxxxxx>,
> "General discussion of project-wide or architectural issues."
> <wtp-dev@xxxxxxxxxxx>
> Date:
> 09/19/2008 12:53 PM
> Subject:
> Re: [wtp-dev] Modelling multiple runtimes in one server
>
>
>
> On Fri, 19 Sep 2008 17:13:57 +0200, Konstantin Komissarchik
> <konstantin.komissarchik@xxxxxxxxxx> wrote:
>
>> The runtime components extension point is used in every server adapter
>> to declare the component that represents the core application server.
>
> Yes, but it is not used for something *usefull* as far as I can see ;)
>
>> The internalRuntimeComponentProviders extension point is not used in WTP
>
>> directly, but is used in several adopter products from different
>> companies.
>
> Anyone of these with source available to see it being used ?
>
> -max
>
>> Oracle
>> Konstantin Komissarchik | Consulting Member of Technical Staff
>> Phone: +1 425 201 1795 | Mobile: +1 206 898 0611
>> Oracle Eclipse Tooling
>> 411 108th Ave NE, Suite 2100 | Bellevue, WA 98004
>>
>> -----Original Message-----
>> From: Max Rydahl Andersen [
mailto:max.andersen@xxxxxxxxxx]
>> Sent: Friday, September 19, 2008 12:28 AM
>> To: konstantin.komissarchik@xxxxxxxxxx; General discussion of
>> project-wide or architectural issues.
>> Subject: Re: [wtp-dev] Modelling multiple runtimes in one server
>>
>> Hi Konstantin,
>>
>> If this does what I think it does from the first readthrough and
> browsing
>> related sourcecode then
>> the faceted API just earned an extra couple of stripes! :)
>>
>> I'll follow up on the blogpost if I bump into some issues, but one worry
>
>> I
>> have is that *no* code in
>> WTP seem to use this extension points (except for the JavaVM
>> runtime)...is
>> it just not known and used
>> by anyone ?
>>
>> /max
>>
>>> Max,
>>>
>>> The answer that you are looking for is runtime components. Rather than
>>> answer your question fully in e-mail, I made a blog post instead. This
>>> will make it easier to google for in the future plus I understand all
>>> the cool kids are into blogs these days. :)
>>>
>>>
>
http://lt-rider.blogspot.com/2008/09/facets-faq-supporting-modular-runtimeshtml
>
>>>
>>> Let me know if something is not clear and feel free to post questions /
>>> comments to the blog.
>>>
>>> Oracle
>>> Konstantin Komissarchik | Consulting Member of Technical Staff
>>> Phone: +1 425 201 1795 | Mobile: +1 206 898 0611
>>> Oracle Eclipse Tooling
>>> 411 108th Ave NE, Suite 2100 | Bellevue, WA 98004
>>>
>>> -----Original Message-----
>>> From: wtp-dev-bounces@xxxxxxxxxxx [
mailto:wtp-dev-bounces@xxxxxxxxxxx]
>>> On Behalf Of Max Rydahl Andersen
>>> Sent: Thursday, September 18, 2008 3:49 PM
>>> To: wtp-dev@xxxxxxxxxxx
>>> Subject: [wtp-dev] Modelling multiple runtimes in one server
>>>
>>> Hi,
>>>
>>> $subject have been on my mind for a long time and I have been looking
>>> high
>>> and low for answers
>>> but I just can't get my head around how this is supposed to be done in
>>> WTP/Facets.
>>>
>>> JBoss AS is a server that you can start and stop, but such server will
>>> be
>>> able to contain multiple runtimes,
>>> i.e. J2EE, Portal, ESB, SIP-server etc. Each of these runtimes can be
>>> expressed as being able to
>>> have one or more facets enabled/disabled on it and these runtimes can
>>> all
>>> be used separatly and together.
>>>
>>> *but* I don't see how WTP support this notion. Each server can only
> have
>>> *one* runtime.
>>>
>>> The only way I can see this work is to allow *any* facet to be
> installed
>>> on JBoss AS server even though
>>> that is wrong dependent on which configuration users are activating -
>>> but
>>> that means that users can
>>> enable facets on a server that won't work if deployed....
>>>
>>> How is the facet framework supposed to be used with this ? Which
> servers
>>> are limited to only one specific runtime/deployment scenario ?
>>>
>>> --
>>> /max
>>> _______________________________________________
>>> wtp-dev mailing list
>>> wtp-dev@xxxxxxxxxxx
>>>
https://dev.eclipse.org/mailman/listinfo/wtp-dev
>>>
>>> _______________________________________________
>>> wtp-dev mailing list
>>> wtp-dev@xxxxxxxxxxx
>>>
https://dev.eclipse.org/mailman/listinfo/wtp-dev
>>
>>
>>
>> --
>> /max
>>
>> _______________________________________________
>> wtp-dev mailing list
>> wtp-dev@xxxxxxxxxxx
>>
https://dev.eclipse.org/mailman/listinfo/wtp-dev
>
>
>



--
/max
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev



Back to the top