IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tests et Performance Java Discussion :

Testabilité des EJB 3.1 (Un cas simple : Hello World !)


Sujet :

Tests et Performance Java

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut Testabilité des EJB 3.1 (Un cas simple : Hello World !)
    Bonjour,

    voilà un simple EJB HelloWorldService sur le que quel je veux faire un simple test unitaire. (IDE utiliser NetBeans 7.0.)

    Et Donc le test devrait consister à vérifier que la méthode sayHelloWorld() de HelloWorldService renvoie bien « Hello World ».

    EJB HelloWorldService :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    package com.xebia.ejbcontainer.service;
     
    import javax.ejb.Local;
    import javax.ejb.Stateless;
     
    @Stateless
    @Local
    public class HelloWorldService implements IHelloWorldService
    {
     
        @Override
        public String sayHelloWorld() {
            return "Hello World";
        }
     
    }
    Pour tester uniquement cet EJB j'ai crée un test JUnit qui se charge d’instancier l’EJBContainer et de récupérer notre Bean. Le seul et unique test sera de vérifier que l’appel à la méthode sayHelloWorld retourne bien « Hello World ».

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    package com.xebia.ejbcontainer.service;
     
    import javax.naming.Context;
    import junit.framework.Assert;
    import java.io.File;
    import java.util.Map;
    import java.util.HashMap;
    import javax.naming.NamingException;
    import javax.ejb.embeddable.EJBContainer;
    import org.junit.AfterClass;
    import org.junit.BeforeClass;
    import org.junit.Test;
     
     
    public class HelloWorldServiceTest
    {
     
        private static EJBContainer ejbContainer;
        private static IHelloWorldService helloWorldService;
     
        public HelloWorldServiceTest()
        {
        }
     
        /***
         * Méthode d'initialisation appelée une seule fois lors de l'exécution
         * des tests de HelloServiceTest.
         * C'est l'endroit idéal pour démarrer l'EJBContainer et récupérer
         * les EJB à tester.
         * @throws NamingException
         */
        @BeforeClass
        public static void init() throws NamingException {
            Map<String, Object> properties = new HashMap<String, Object>();
            properties.put(EJBContainer.MODULES, new File("target/classes.ext"));
            ejbContainer = EJBContainer.createEJBContainer(properties);
            Context ctx = ejbContainer.getContext();
     
            // le nom JNDI d'un EJB dépend du serveur d'applications utilisé :
            // jboss     : "HelloWorldService/local"
            // glassfish : "java:global/classes.ext/HelloWorldService"
            String helloWorldServiceName = HelloWorldService.class.getSimpleName();
            helloWorldServiceName = isJbossContainer() ? helloWorldServiceName + "/local" : "java:global/classes.ext/" + helloWorldServiceName;
            helloWorldService = (IHelloWorldService) ctx.lookup(helloWorldServiceName);
        }
     
        /***
         * Méthode de test qui vérifie que nous avons bien récupéré l'EJB
         * HelloWorldService et qu'il est fonctionnel
         */
        @Test
        public void should_say_hello_world() {
            Assert.assertEquals("Hello World", helloWorldService.sayHelloWorld());
        }
     
        /***
         * Méthode de nettoyage appelée une seule fois après l'exécution de
         * l'ensemble des tests unitaires de HelloServiceTest.
         * C'est l'endroit idéal pour fermer le contexte JNDI et l'EJBContainer.
         * Un bug de JBoss nous contraint à ne pas appeler les méthodes close()
         * sur context et container.
         * @throws NamingException
         */
        @AfterClass
        public static void cleanup() throws NamingException {
            ejbContainer.close();
        }
     
        private static boolean isJbossContainer() {
            return System.getProperty("jboss.home") != null;
        }
     
    }
    Message obtenu lors de l’exécution de l'application "HelloWorldServiceTest" via JUnit :

    Erreur afficher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    17 juil. 2011 15:06:16 com.sun.enterprise.v3.server.CommonClassLoaderServiceImpl findDerbyClient
    INFO: Cannot find javadb client jar file, derby jdbc driver will not be available by default.
    17 juil. 2011 15:06:17 org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory processXMLProbeProviders
    GRAVE: MNTG0301:Cannot process XML ProbeProvider, xml = META-INF/gfprobe-provider.xml
    java.lang.IllegalStateException: Provider already mapped glassfish:javamail:smtp-transport
    	at org.glassfish.flashlight.impl.core.ProbeProviderRegistry.registerProbeProvider(ProbeProviderRegistry.java:100)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.registerProvider(FlashlightProbeProviderFactory.java:538)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.processXMLProbeProviders(FlashlightProbeProviderFactory.java:363)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processProbeProviderXML(MonitoringBootstrap.java:474)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processManifest(MonitoringBootstrap.java:350)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.addProvider(MonitoringBootstrap.java:291)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.verifyModule(MonitoringBootstrap.java:235)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.discoverProbeProviders(MonitoringBootstrap.java:178)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.enableMonitoringForProbeProviders(MonitoringBootstrap.java:614)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.postConstruct(MonitoringBootstrap.java:166)
    	at com.sun.hk2.component.AbstractCreatorImpl.inject(AbstractCreatorImpl.java:131)
    	at com.sun.hk2.component.ConstructorCreator.initialize(ConstructorCreator.java:91)
    	at com.sun.hk2.component.AbstractCreatorImpl.get(AbstractCreatorImpl.java:82)
    	at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:67)
    	at com.sun.hk2.component.EventPublishingInhabitant.get(EventPublishingInhabitant.java:139)
    	at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:76)
    	at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:219)
    	at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:135)
    	at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:273)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:66)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:176)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:158)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.init(EJBContainerProviderImpl.java:175)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.createEJBContainer(EJBContainerProviderImpl.java:126)
    	at javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:127)
    	at com.xebia.ejbcontainer.service.HelloWorldServiceTest.init(HelloWorldServiceTest.java:43)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    	at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
    17 juil. 2011 15:06:17 org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory processXMLProbeProviders
    GRAVE: MNTG0301:Cannot process XML ProbeProvider, xml = META-INF/mojarra-jsf-api-probe-provider.xml
    java.lang.IllegalStateException: Provider already mapped glassfish:jsf:faces-servlet
    	at org.glassfish.flashlight.impl.core.ProbeProviderRegistry.registerProbeProvider(ProbeProviderRegistry.java:100)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.registerProvider(FlashlightProbeProviderFactory.java:538)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.processXMLProbeProviders(FlashlightProbeProviderFactory.java:363)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processProbeProviderXML(MonitoringBootstrap.java:474)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processManifest(MonitoringBootstrap.java:350)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.addProvider(MonitoringBootstrap.java:291)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.verifyModule(MonitoringBootstrap.java:235)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.discoverProbeProviders(MonitoringBootstrap.java:178)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.enableMonitoringForProbeProviders(MonitoringBootstrap.java:614)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.postConstruct(MonitoringBootstrap.java:166)
    	at com.sun.hk2.component.AbstractCreatorImpl.inject(AbstractCreatorImpl.java:131)
    	at com.sun.hk2.component.ConstructorCreator.initialize(ConstructorCreator.java:91)
    	at com.sun.hk2.component.AbstractCreatorImpl.get(AbstractCreatorImpl.java:82)
    	at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:67)
    	at com.sun.hk2.component.EventPublishingInhabitant.get(EventPublishingInhabitant.java:139)
    	at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:76)
    	at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:219)
    	at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:135)
    	at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:273)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:66)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:176)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:158)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.init(EJBContainerProviderImpl.java:175)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.createEJBContainer(EJBContainerProviderImpl.java:126)
    	at javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:127)
    	at com.xebia.ejbcontainer.service.HelloWorldServiceTest.init(HelloWorldServiceTest.java:43)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    	at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
    17 juil. 2011 15:06:17 org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory processXMLProbeProviders
    GRAVE: MNTG0301:Cannot process XML ProbeProvider, xml = jersey-gf-server-probe-provider.xml
    java.lang.IllegalStateException: Provider already mapped glassfish:jersey:server-hidden
    	at org.glassfish.flashlight.impl.core.ProbeProviderRegistry.registerProbeProvider(ProbeProviderRegistry.java:100)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.registerProvider(FlashlightProbeProviderFactory.java:538)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.processXMLProbeProviders(FlashlightProbeProviderFactory.java:363)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processProbeProviderXML(MonitoringBootstrap.java:474)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processManifest(MonitoringBootstrap.java:350)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.addProvider(MonitoringBootstrap.java:291)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.verifyModule(MonitoringBootstrap.java:235)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.discoverProbeProviders(MonitoringBootstrap.java:178)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.enableMonitoringForProbeProviders(MonitoringBootstrap.java:614)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.postConstruct(MonitoringBootstrap.java:166)
    	at com.sun.hk2.component.AbstractCreatorImpl.inject(AbstractCreatorImpl.java:131)
    	at com.sun.hk2.component.ConstructorCreator.initialize(ConstructorCreator.java:91)
    	at com.sun.hk2.component.AbstractCreatorImpl.get(AbstractCreatorImpl.java:82)
    	at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:67)
    	at com.sun.hk2.component.EventPublishingInhabitant.get(EventPublishingInhabitant.java:139)
    	at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:76)
    	at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:219)
    	at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:135)
    	at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:273)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:66)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:176)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:158)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.init(EJBContainerProviderImpl.java:175)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.createEJBContainer(EJBContainerProviderImpl.java:126)
    	at javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:127)
    	at com.xebia.ejbcontainer.service.HelloWorldServiceTest.init(HelloWorldServiceTest.java:43)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    	at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
    17 juil. 2011 15:06:17 org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory processXMLProbeProviders
    GRAVE: MNTG0301:Cannot process XML ProbeProvider, xml = jersey-gf-statsprovider-probe-provider.xml
    java.lang.IllegalStateException: Provider already mapped glassfish:jersey:server
    	at org.glassfish.flashlight.impl.core.ProbeProviderRegistry.registerProbeProvider(ProbeProviderRegistry.java:100)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.registerProvider(FlashlightProbeProviderFactory.java:538)
    	at org.glassfish.flashlight.impl.provider.FlashlightProbeProviderFactory.processXMLProbeProviders(FlashlightProbeProviderFactory.java:363)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processProbeProviderXML(MonitoringBootstrap.java:474)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.processManifest(MonitoringBootstrap.java:350)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.addProvider(MonitoringBootstrap.java:291)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.verifyModule(MonitoringBootstrap.java:235)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.discoverProbeProviders(MonitoringBootstrap.java:178)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.enableMonitoringForProbeProviders(MonitoringBootstrap.java:614)
    	at org.glassfish.admin.monitor.MonitoringBootstrap.postConstruct(MonitoringBootstrap.java:166)
    	at com.sun.hk2.component.AbstractCreatorImpl.inject(AbstractCreatorImpl.java:131)
    	at com.sun.hk2.component.ConstructorCreator.initialize(ConstructorCreator.java:91)
    	at com.sun.hk2.component.AbstractCreatorImpl.get(AbstractCreatorImpl.java:82)
    	at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:67)
    	at com.sun.hk2.component.EventPublishingInhabitant.get(EventPublishingInhabitant.java:139)
    	at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:76)
    	at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:219)
    	at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:135)
    	at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:273)
    	at org.glassfish.internal.embedded.Server.<init>(Server.java:66)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:176)
    	at org.glassfish.internal.embedded.Server$Builder.build(Server.java:158)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.init(EJBContainerProviderImpl.java:175)
    	at org.glassfish.ejb.embedded.EJBContainerProviderImpl.createEJBContainer(EJBContainerProviderImpl.java:126)
    	at javax.ejb.embeddable.EJBContainer.createEJBContainer(EJBContainer.java:127)
    	at com.xebia.ejbcontainer.service.HelloWorldServiceTest.init(HelloWorldServiceTest.java:43)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
    	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
    	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    	at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
    	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
    17 juil. 2011 15:06:17 org.glassfish.ha.store.spi.BackingStoreFactoryRegistry register
    INFO: Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry
    17 juil. 2011 15:06:18 org.glassfish.ha.store.spi.BackingStoreFactoryRegistry register
    INFO: Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry
    17 juil. 2011 15:06:18 com.sun.enterprise.v3.server.AppServerStartup run
    GRAVE: Échec de démarrage du service de démarrage*: com.sun.enterprise.naming.GlassFishNamingBuilder
    17 juil. 2011 15:06:18 com.sun.enterprise.v3.server.AppServerStartup run
    INFO: GlassFish Server Open Source Edition 3.1 (43) heure de démarrage*: Embedded (594ms), services de démarrage(1*172ms), total(1*766ms)
    17 juil. 2011 15:06:18 org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread run
    INFO: JMXStartupService: JMXConnector system is disabled, skipping.
    Quelqu'un pourrait-il m'expliquer ce qui ne va pas ?

    j'ai aussi des doute avec les chemin "target/classes.ext" et "java:global/classes.ext/" que je comprend pas vraiment ces quoi normalement d’après ce que j'ai lu il préciser le répertoire des classes compilées. (si je doit les changer comme je doit le faire ?)

    Mais sa na rien avoir avec le message d'erreur.

    Merci d'avance pour votre aide.

  2. #2
    Membre actif Avatar de miya
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 469
    Points : 240
    Points
    240
    Par défaut
    ajoute au classpath de ton test les jars dépendant

  3. #3
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Citation Envoyé par miya Voir le message
    ajoute au classpath de ton test les jars dépendant
    ? j'ai pas bien compris pour quoi tu ma dit sa mais j'ai tester mais sa marche pas !! ta tester toi sa marcher chez toi ?

    j'ai même a jouter (add library de Derby) dans la lib (du dossier de test, la où ce trouve glassFiche-embedded) mais le même


    ps: j'utilise netBeans (donc utilise sa structure de fichier)

  4. #4
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    oufff, (j'ai trouvé la solution, mais d’après moi ces un bugs de GlasseFiche)

    Donc le même code de test c'exécute (Junit4) mais avec la version GlasseFiche3.0.1
    Alors que avant je travailler avec la version 3.1.0 de GlasseFiche (dernière version à ma connaissance) sa marche pas (message d’erreur du 1er post)

    si quelqu'un peut nous dire s'il a trouvé le problèmes à cette solution ou a comprit le problème d'où il vient ?

  5. #5
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Citation Envoyé par geforce Voir le message
    oufff, (j'ai trouvé la solution, mais d’après moi ces un bugs de GlasseFiche)

    Donc le même code de test c'exécute (Junit4) mais avec la version GlasseFiche3.0.1
    Alors que avant je travailler avec la version 3.1.0 de GlasseFiche (dernière version à ma connaissance) sa marche pas (message d’erreur du 1er post)

    si quelqu'un peut nous dire s'il a trouvé le problèmes à cette solution ou a comprit le problème d'où il vient ?
    Personne n’a eu ce bug ? (il reste inexpliqué)

Discussions similaires

  1. iOS : Simple Hello World et bouton
    Par Invité dans le forum Objective-C
    Réponses: 2
    Dernier message: 30/03/2014, 10h18
  2. [MVC] page jsp simple hello world
    Par daydream123 dans le forum Spring Web
    Réponses: 0
    Dernier message: 12/07/2011, 15h23
  3. [MVC] Spring MVC, un "simple" hello world
    Par pigpen dans le forum Spring Web
    Réponses: 1
    Dernier message: 08/07/2011, 10h45
  4. erreur a l'execution d'un simple hello world
    Par lilington dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/06/2008, 15h57
  5. [JONAS][EJB]erreur sur la construction des EJB
    Par silvermoon dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 04/06/2004, 19h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo