dev@glassfish.java.net

Re: About the GLASSFISH-16651

From: Tang Yong <tangyong_at_cn.fujitsu.com>
Date: Sat, 07 Jul 2012 15:47:23 +0900

Dear Sahoo,

OK, I will investigate and contribute much!

In addtion, the pom files of fighterfish\module
seem not to keep consistent with GFv4 main/pom.xml, such as:

       <dependency>
            <groupId>org.glassfish.web</groupId>
            <artifactId>web-glue</artifactId>
       </dependency>

In GFv4, the groupId of web-glue has changed into org.glassfish.main.web.

need to update them?

--Best Regard!
--Tang

Sahoo wrote:
> The war to wab conversion is configurable. So, please evaluate how user
> can provide additional configuration.
>
> Thank you for your effort,
> Sahoo
> On Saturday 07 July 2012 11:46 AM, Tang Yong wrote:
>> Dear Sahoo,Hong Zhang
>>
>> Thanks your suggestions very much!
>>
>>> Hong is right. No, we don't want --type=wab. Instead, we should let
>>> user use --type=osgi and we automatically wrap it if user has given us
>>> a war file.
>>>
>>>> For step 2, did you mean --type osgi instead of --type wab? I >
>>> don't think we want to introduce another type here..
>> OK, I have understood and will modify my prototype.
>>
>>>> I think we already have an archive handler for OSGI today
>>>>
>> (main/appserver/extras/osgi-container/src/main/java/org/glassfish/extras/osgicontainer/OSGIArchiveHandler),
>>
>>>> maybe we could re-use that class instead of adding a new class, but
>>>> Sahoo is the expert in this area so I will let him comment on it.
>> If using --type=osgi, indeedly,OSGIArchiveHandler could be reused.
>>
>> I will continue to finish my prototype according to your suggestions.
>>
>> --Best Regard!
>> --Tang
>>
>> Sahoo wrote:
>>> Hong is right. No, we don't want --type=wab. Instead, we should let
>>> user use --type=osgi and we automatically wrap it if user has given us a
>>> war file.
>>>
>>> Thanks,
>>> Sahoo
>>> On Friday 06 July 2012 07:48 PM, hong.hz.zhang_at_oracle.com wrote:
>>>> Hi, Tang
>>>> Thanks for contributing to the GlassFish!
>>>>
>>>> For step 2, did you mean --type osgi instead of --type wab? I don't
>>>> think we want to introduce another type here..
>>>>
>>>> I think we already have an archive handler for OSGI today
>>>> (main/appserver/extras/osgi-container/src/main/java/org/glassfish/extras/osgicontainer/OSGIArchiveHandler),
>>>> maybe we could re-use that class instead of adding a new class, but
>>>> Sahoo is the expert in this area so I will let him comment on it.
>>>>
>>>> Thanks,
>>>>
>>>> - Hong
>>>>
>>>> On 7/6/2012 3:05 AM, Tang Yong wrote:
>>>>> Dear Sahoo
>>>>> CC: Hong Zhang
>>>>>
>>>>> I have made a prototype of GLASSFISH-16651 and put the modified files
>>>>> into https://github.com/tangyong/GLASSFISH-16651 .
>>>>>
>>>>> Currently, the prototype can work for me. If using the following way,
>>>>> plain vanilla WAR can be wraped WAB(osgi rfc#66) and can be accessed
>>>>> from Brawser.
>>>>>
>>>>> 1 asadmin start-domain
>>>>>
>>>>> 2 asadmin deploy --type=wab
>>>>> e:\test_sample1.war?Web-ContextPath=/test_sample1"
>>>>>
>>>>> 3 access "http://localhost:8080/test_sample1/" and "Hello! Servlet3.0
>>>>> Sample1111111111" appeared!
>>>>>
>>>>> In addtion, after teleneting localhost 6666, executing "lb" on shell,
>>>>> and will find the following bundle info:
>>>>>
>>>>> " 274|Active | 1|org.glassfish.fighterfish.autogenerated_0 (0.0.0)"
>>>>>
>>>>> [My Design Idea]
>>>>> The critical point is to find the integration point between the deploy
>>>>> moudle and fighterfish\module\osgi-web-container moudle. So, I made a
>>>>> new subclass of GenericHandler called(OSGiWABArchiveHandler) in
>>>>> org\glassfish\extras\osgicontainer. Then, in the "expand" method, add
>>>>> the following logic:
>>>>>
>>>>> 1) getting WebBundleURLStreamHandlerService service from osgi registry
>>>>> 2) while the deploy process is expanding war, rewrite the war's Manifest
>>>>>
>>>>> If having time, wish you can see it and I will continue to contribute it
>>>>> according your suggestions.
>>>>>
>>>>> BTW: when I made the prototype, I found that some dependency declarings
>>>>> of pom file in the fighterfish\module(etc.osgi-web-container) did not
>>>>> keep consistent with GFv4 main/pom.xml, such as:
>>>>>
>>>>> <dependency>
>>>>> <groupId>org.glassfish.web</groupId>
>>>>> <artifactId>web-glue</artifactId>
>>>>> </dependency>
>>>>>
>>>>> In GFv4, the groupId of web-glue has changed into org.glassfish.main.web.
>>>>>
>>>>> --Best Regard!
>>>>> --Tang
>>>>>
>
>
>