glassfish3 & java ee6 at genevajug by alexis moussine-pouchkine

Post on 20-Jun-2015

695 Views

Category:

Technology

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Java EE 6 est loin d'être un simple rafraichissement d’une technologie que certains trouvent vieillissante. Avec des évolutions majeures pour EJB, JPA, servlet, et JSF, avec l’arrivée d’une injection unifiée avec CDI, le rajout de JAX-RS ou encore l’arrivée de BeanValidation il devient quasi inutile de rajouter des bibliothèques externes. Avec un support complet de Java EE 6, des fonctions orientées développeur, de multiples outils d’administration, un mode embarqué, une modularité basée sur OSGi.... La liste des fonctionnalités de GlassFish 3 sonne comme les promesses d’autres serveurs d’applications. A vous de voir comment tout ceci est utilisable pour vous, dès aujourd’hui. Cette présentation intègrera donc une bonne partie des nouveautés de la plate-forme Java EE 6, des démonstrations et une feuille de route sur l’avenir du projet GlassFish (3.1 et au delà).

TRANSCRIPT

� �

�������������� ������� �������������������

�������������������������

��������������

�����������������������

��������������������������������

��� �� ������� ����!���"#���$##%

� �

� ������������������

����������������� �����������������

� �

� ������������������

� �

� ������������������

����������������������

������������

&�������

�'�(

'�����

&������

)'(�&

)����

)�����

��)*

��)�+�&

�'�

����

$##,

��-

$##�

��������������� ��

� ���������������� �!"

� ���������#������ �$"

'���.

$##/

��.

$##%

$."

���

$##0

$."."

����������"

.#."

����

$#"#

� �

� �������

� ��&�������-� 1����2���������2��������2� ��������

� '����������$##,����3��.����

� '�!����3����

� �����-�4��)�+'52�������4��)�6'52����77�-�4���52�

�����������4&����52�8����9�4��'52�������������:

� ������������'����� �����������9�����-�����8����'�����

� �������,�;���+� �������<�������������

� �����&����������'������� ����8�����

� �

%��� �� ������������

� �

� ��������&���&���'���

� =������:���������������� ����������������3���

� ����������8����'���������������������������:��������

� +�����������������������������������-

� '����:�������!-�8����������������

� &��������������������-����������������������

� ����������.#."��������������$#"#�����������

� ��������������� ����2�3������2�+>�(2��?�!����@�A�

� "##B�!�:� ����2�...

� ����������������

� ����������."����$#"#2�.$����$#""2�?����$#"$

� &��������:2���������7��������2�&��������2��������7�����

� ��������������C;;:���� ���.��:;�������

� �

(��

��������������������D����

����������

� �

� <�������������������� ���������������� ����

� ����������-�� ��������������������������� ����

)��� �������� ��� �*����+

� �

�������,������

� ����-����������������������������� ���

������������������������-�����

$ asadmin redeploy --propertieskeepSessions=true myapp.war

� ������-������� �������

�����������������:�

� <���:���������< ��

� �

-���������&�� ���������#

� �

.��� �������(������

� ��������C��������������48'��5

� �������!���C�>E$

� F�����-������G

� �

��������

)��/����)

������

��������

�� ��0�

����������

�����������

'�����

�'�

��*

��'

+�<;<<8�

�� �����

��������

�� ��0#

+�!���

'����!��

&��

�&�

��������

�������

�� ��01

��6�!�'������

6'

����:�����

����-����

��������

�������

����� �!

������

����������

�����������

��*�

����".#

6'�H

�'�

�������

������

����� �$

������

����������

4D�!5

��*�."

����$.#

'������.#

�'��$.#

��)�+'�"."

& <�".#

I<�3���

*����@������J

23�)���

.���&�4��

����� 5���3����������

����� �$�6�2���7��8'9

� '��������D���<�

� 6�!���� ���

� �������!����-�K����::�!����-

� ��������-�<�3������

� <����������������-���<�

� ��*�."

� ����$.#

� '������.#

� �'��$.#

� ��)�+'�"."

� &����������".�

� *����@����������".#

� <�".#

� & <�".#

� ����:���*�����".#

� <������������"."

� ��)�6'�$.$

� �'+�"#%�".

� �'��$.$�;��(�$.$

� �'+�$,#�"."

8'�������*������*����������

��:;,�

� +�'� ���D�!�����������<

� ������-�D����-��������

� +����-���:������2���:�������>������<

� �����������!��������:������:������

� ���:�����������<�D����������

� ��)�+'�"."�����:�������D������*�

��:;,�����* ����

����������� ������������ ���������������� �������������������� �� ���� ���������������� �� ���� ���������������������������������������

���������������

��������������� ��� ���� ���������������������

4���<� ���������0=

��������������� ��

������������� !����������������� �� � ���� ���!����������!����� � �

������"�� ���������� �#$

������

���%&��&�����"��������"�� �'�����(�������($

�����������'�����(��

���%&��&����%��) �����*��

������"�� ����������� $

������

��L�������������

�!3����:����

���������

4�� ��������'�+

� !����#$%&���#$��'�� �����"�������(����"������)��� �%+���� �� �%,��� ����&&-,�,.-&/,012��32,4-+��5.26+��%� � �������7&,.32��������%��� �8�� �(�'���������������� �� ���� 8����� �����)����� $����������9:���������� 8�������$�

�<���:������������������'�

�*�����������<�

����� �$�23�)���

� '������.#

� �'��$.$�;��(�$.$

� �'+�?,�".#

� �'�(�".$

� �'��$.#

� *����@����������".#

� ��*�."�(���

� ����$.#

� ����"."

� <�".#

� & <�".#

� ����:���*�����".#

� <������������"."

� �'+�$,#�"."

.��� ���23��** ��������

� (�!���������������������*+,�������)���� ��*)���������������� �-�* ��.���2��-�*/����������������� ��.���'�������0����!�������� ���� ���:�����������:���������

� +��������3���

�����0=

� '��������7��� �������

� ������������-�� �������������!������

� &�������������������

� �3�����������D��������������D�

� ���������'��������<�G

�4�#0�

� � ��������!����

� � �������!����

� �1 2�������� �����������

� � ������������

� �34'����������<�D������������'�

� � ������*���������-����������D�!����

)��>�&��&������'��

foo.ear

com/acme/Foo.class

WEB-INF/web.xmlWEB-INF/classes com/acme/FooServlet.class

com/acme/FooEJB.classcom/acme/FooEJBLocal.class

lib/foo_common.jar

foo_web.war

foo_ejb.jar

foo.war

WEB-INF/classes com/acme/Foo.class com/acme/FooServlet.class com/acme/FooEJB.class

� �

(��

���������4��������5�����������

� �

��5� � �*������+

���������� �����������C�����C;;��D�����.3��.���;:���� ���;�������;

� �

.���)��� ���(� �*���

� ���������������-�� �����������������������

���� ����

� ������������������

� java -jar glassfish.jar toto.war� <���:�������D���������$�

� mvn gf:run2�gf:start2�gf:deploy2�...� &��������������!�������;��������-��������-

� ��������������������:������

�)���0=

� '������� ���������������� �!������-��������

��!����!����!3����

� ��9(�������������

� �.:.�&�'��6>�=2�=1((<�

� '������������:���<

� ������������������:

� &����������<� ����-������L���-�������������

���������)-

2����(3���� �� �������$'��� ���;���� ������� ��� �'��� ���;���� ���$'��� ���<� �(=;��>?�@� �(���������������������������� �� <� �(�;��>�����$

����=;��>?����>���@� �(�,����;��>�����$

@� �(� ���������>������)��������� @�������>������� ���������� ��$

�262',��5�-3�;��>��42�2���� ���������.��231,0

���������)-���������

2����(3���� �� �������$'��� ���;���� ������� ��� �'��� ���;���� ���$'��� ���<� �(=;��>?�@� �(���������������������������� �� <� �(�;��>�����$

����=;��>?����>���@� �(�,����;��>�����$

@� �(� ���������>�����������������2���(����>�� ��4��56�� �����������$

'��������-�:��������

����$.#����������

���������)-�� ����������

2����(3���� �� �������$'��� ���;���� ������� ��� �'��� ���;���� ���$'��� ���<� �(=;��>?�@� �(���������������������������� �� <� �(�;��>�����$

����=;��>?����>���@� �(�,����;��>�����$

@� �(� ���������>�����������������2���(����>�� ��4��56�� ����������������)����42�����&&&&&) ����������&&&&&)��.������������)�����42�����$

7 �84��59����>�����������������)������:���2�@� �(��� �� ���6����$

,(� �<� �(=;��>?

(*������-�/�����

� &�������K� ��������-�<�3�������4& <5

� �'+�$%%�D�����'+�#�4�0�;���5

� &�����������:������4�����������52�

�����2������������2��������-���2������������

K�����

� *�������������������������

� <�3�����������������44���<���������<5

� �=� ������������������

� �

?�� ������/�����

�0�;������������'� ���������$

@�� ����4������� �������!��5�.�.�M�D��������N�O

��*��/������*����

� �

?�� ��������������

%,��� ���,012�32,4-+�1���32,2��5.26+��%� � �������7&,.32�%+���� �� ��:���,���������%��� �8�� ���������A�

������� �BB��(��C��@����8� �������������� ����'���� ��

���� � ���'���� ��������������"������(����A��

� �

?�� ������/�����

�0�;������������'� ���������$

@�� ����4������� �������!��5�.�.�M�D��������N�O

��*��/������*����

(*������-�/���������*

��*��&��� &'���5���>�����&�

&&�0�;���&&'���5���>�������7����0�&? ��&� ��%&&&&&&&&&&&&&&&&&&�=���*��&���242�'=�@0�6'1=@�&&&&&&&&&&&&&&&&&&��2��������� ��&����� ��%&&&&&&&&&&&&&&&&&&�@�,����&'���&�����&�&&&&)))&&�

� �

��'���������� �����3�������� �4�9

EJBContainer c = EJBContainer.createEJBContainer();

Context ic = c.getContext();

SimpleEjb ejb = (SimpleEjb)ic.lookup("java:global/sample/SimpleEjb");

ejb.sayHello();

� �

��'���������� �����3�������� �4�9

EJBContainer c = EJBContainer.createEJBContainer();

Context ic = c.getContext();

SimpleEjb ejb = (SimpleEjb)ic.lookup("java:global/sample/SimpleEjb");

ejb.sayHello();

=�D������*�."

�����!����= <�����

� �

��'���������� �����3�������� �4�9

@Test public void test() {

EJBContainer c = EJBContainer.createEJBContainer();

Context ic = c.getContext();

SimpleEjb ejb = (SimpleEjb)ic.lookup("java:global/sample/SimpleEjb");

ejb.sayHello();

}

���

� �

� �������� �3���

org.glassfish.api.embedded.Server server; Server.Builder builder = new Server.Builder(); server = builder.build();

� �

� �������� �3���

org.glassfish.api.embedded.Server server; Server.Builder builder = new Server.Builder(); server = builder.build();

ContainerBuilder b =server.createConfig(ContainerBuilder.Type.web);

server.addContainer(b);

� �

� �������� �3���

org.glassfish.api.embedded.Server server; Server.Builder builder = new Server.Builder(); server = builder.build();

ContainerBuilder b =server.createConfig(ContainerBuilder.Type.web);

server.addContainer(b);

File archive = new File("hello.war"); server.getDeployer().deploy(archive);

'����!���2��� ����������-������

�������������+������!��

� �

� �������� �3���

@BeforeClass public static void initContainer() { org.glassfish.api.embedded.Server server; Server.Builder builder = new Server.Builder(); server = builder.build();

ContainerBuilder b =server.createConfig(ContainerBuilder.Type.web);

server.addContainer(b);

File archive = new File("hello.war"); server.getDeployer().deploy(archive);

}

@Test public static void pingApplication() { ...

}

� �

� �������� �3���

public static void main(String[] args) { org.glassfish.api.embedded.Server server; Server.Builder builder = new Server.Builder(); server = builder.build();

ContainerBuilder b =server.createConfig(ContainerBuilder.Type.web);

server.addContainer(b);

File archive = new File("realApplication.war"); server.getDeployer().deploy(archive);

}

'������������������������������������

� �

2���7������� �'����%���9

� ����������������������� �8'���4������!-��� ����5

� ���������������� ��������L������4����E��� ��� ���5

� �������������������$##B�!������

� &�������D�������8'���4'����������5

� &�������8'�������:������������4&(<����6�!5

� &���!�������������������� ��������:�8'����������

� ��-�8'���!������D���������������������

� ����������glassfish/modules{/autostart}� &��������asadmin deploy��������:���type osgi� ����������8'����������������

� �

������&�� ���������#%���;��� �6�������* 5�������������*�����

� 8'��������������������

� Service-Component�����-����������+����� ���

� <���������������� ������

�����������:����������

@Resource���3������

� =��������������������

��<�G

� =����������������

!��D����8'������

������

'����!-�����C�����C;;!��:�.���.���;�����7;����-;:���� ���PP����������P����P?�

� �

(��

��������:�����������

8'�����-��

� �

������&�� ���������#�*���&(.�6�����������* 5���������*�����

� �����������������D����

��������� ����'����:����

���������

� '������'����:�!����

�����������:�����������

� <���������������� ������

�����������:����������

@Resource���3������� '������������� ���

������������<

� '��:����������� ���!����

'����:����� ����������

'����!-�����C�����C;;!��:�.���.���;�����7;����-;:���� ���PP����������P����P?�

� �

%����A������ �B���3�����**�

� ��������������������������������

� �����!����������������-

� ������������46�!�K�&(<5

� <��������������� ����������������8'���

��������K����������

� 8'���+�&A�

� '������� ���������������� ���

� �.:.����2���*2�� *&2����2�...����8'����������

� 6�!�������������*������46�*5

� 6�+�B�8'������������B�6�!�&�����������������

� �

C*��������

� �

.��������&�����.���&���4�����'3������ �����asadmin

� -��������������������������������:�� �������

������-��������������������������� *����������:�������

��DG

� �����!��2��-������������ ��������:������ ������

� *������������������������<����D������������

� ���!������������� ��������3������)�(���DG

� � ��������������K����������-�����D�

� +�'� �������� �������DG

� ������ ����������������DG

� '������������������)� jconsole�����visualvm�������������������

� �

, ��� ������

� ��)�+';�����-�B����77�-�����������+�'��

����� ��������C� &�� �:������������4������2��8'�2� �(���5

� <��������������4�������2�����2������-2����..5

� ���������:�4�������-5

� �����!��� ����C� http://localhost:4848/management/domain � http://localhost:4848/monitoring/domain

� 1���+�'��������������������1<���!�������� 1���-��� �������:���;��������:����:��:���������

� ����� ���������������)�(2�>��(�����'8=

� �������!��

� �

(��

+�'� ��������

� �

�� �������000

� -���������:��:��

� +����2�������2� 3��:�2�'����;(� �...

� ��-���6�!

� &����2�����������2�6�!'������2�...

� ������������� ���C

� ���P3�

� 6�! �@2�&�<2�''<

� 6�!�'������������

� .=���.,��������

� 8����9���������

� �

� ��������6�)�������

� ������� ��������C;;:���� ���.��:� ����������.#."������!���4����1&����������� ����5

� ����� ��������C;;DDD.������.���;:���;:���� ���

4���8����� �D��������:������ ������.5

� &������G� �����������=��*�����4����...5

� ����������L�����

� ����������<��������2�R���������

� �D��������7���������:�����*� &������� ����6�!���� ������� �������� ���

� �

��& �������� ��������%� �#0�

� >�:�������:���

� &��!��������!��� ���� ����$."."�����.#

� &��������:2�������������������������7��������� ����$."."

� 8'������������-�������������� ����.�

� ��������������������������

� �

����� ��������#0����&� �&���

� *��������������:�4�"5

� ���.���������:�4�"5

� +�'� �����<�4�"5

� '��!���7����!������

� '���������:��77�-

� ������+��K�'��&���

�������� ������

� +������'�'*;��*�������

��������������-�

� �������������������

���������

� 6�!'�������4������77�-5

� ����������������8'��

� 1�������< �����:���

� <�������& <�����:������

� ��������:-��� ����C��'�2�

& <2����77�-2�8'��2����2�

�����-2�*����@���������2�

�����2�1&2����.

� 6'�<�����������C�*��

".$;$.#2�*'�2�"."2�+'��".#

� ���������...

� �

������.��I���.���

����C;;!��:�.���.���;��������

�D�����C���������

?�������

top related