- 
        1. Re: why should i need to know the path to Glassfish in Remote Testingaslak Oct 20, 2010 6:05 AM (in response to hugirat)What needs to know where it is? The valid and only configuration options for GlassFish Remote 3 are: http://docs.jboss.org/arquillian/reference/latest/en-US/html_single/#container.glassfish-remote-3 
- 
        2. Re: why should i need to know the path to Glassfish in Remote Testinghugirat Oct 20, 2010 6:57 AM (in response to aslak)I'm starting to get the impression that I have misunderstood something so the situation is the following, I want to test webservices in Remote glassfish. so i have donn the following: @RunWith(Arquillian.class) 
 @Run(RunModeType.AS_CLIENT) //RunModeType.IN_CONTAINER)/** 
 * Deployment for the test
 * @return
 */public class EmployeeWSTest { @Deployment 
 public static WebArchive getDeployment()
 {
 return ShrinkWrap.create(WebArchive.class, "test.war").addClasses(EmployeeWS.class,employee.Employeebean.class,employee.Employee.class)
 .addManifestResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml"));
 }
 @Inject EmployeeWS webservice;
 public EmployeeWSTest() {
 }@BeforeClass 
 public static void startContainer() throws Exception
 {
 Runtime.getRuntime().exec(new String[] {
 getAsadminCommand(),
 "start-domain",
 "tests"}).waitFor();
 }
 @AfterClass
 public static void stopContainer() throws Exception
 {
 Runtime.getRuntime().exec(new String[] {
 getAsadminCommand(),
 "stop-domain",
 "tests"}).waitFor();
 }@Before 
 public void setUp() {
 }@After 
 public void tearDown() {
 }/** 
 * Test of getEmployee method, of class NewWebService.
 */
 @Test
 public void testGetEmployee() {
 System.out.println("getEmployee");
 webservice = new EmployeeWS();
 String expResult = "yahya";
 String result = webservice.getEmployee();
 Assert.assertEquals(expResult, result);} 
 @Test
 public void testSetEmployee(){
 System.out.println("getEmployee");
 webservice =new EmployeeWS();
 boolean expected=true;
 boolean result=webservice.setName("Test");
 Assert.assertEquals(expected, result);
 }public static String getAsadminCommand() 
 {File asadminFile = new File("/serv/glassfishv3/bin/./asadmin"); locally i have another path, this path for Hudson. 
 System.out.println(asadminFile.toString());
 if (!asadminFile.exists() || !asadminFile.isFile())
 {
 Assert.fail("Path to asadmin command is invalid: " + asadminFile.getAbsolutePath());
 }
 return asadminFile.getAbsolutePath();
 }locally it had worked fine. but with hudson i get the following error: [junit] Testsuite: employeews.EmployeeWSTest [junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.075 sec [junit] [junit] Testcase: initializationError(employeews.EmployeeWSTest): Caused an ERROR [junit] org.jboss.arquillian.spi.LifecycleException: Could not connect to container [junit] org.jboss.arquillian.impl.event.FiredEventException: org.jboss.arquillian.spi.LifecycleException: Could not connect to container [junit] at org.jboss.arquillian.impl.event.MapEventManager.fire(MapEventManager.java:68) [junit] at org.jboss.arquillian.impl.context.AbstractEventContext.fire(AbstractEventContext.java:115) [junit] at org.jboss.arquillian.impl.EventTestRunnerAdaptor.beforeSuite(EventTestRunnerAdaptor.java:68) [junit] at org.jboss.arquillian.junit.Arquillian.<init>(Arquillian.java:89) [junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513) [junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513) [junit] Caused by: org.jboss.arquillian.spi.LifecycleException: Could not connect to container [junit] at org.jboss.arquillian.container.jsr88.remote_1_2.JSR88RemoteContainer.start(JSR88RemoteContainer.java:108) [junit] at org.jboss.arquillian.impl.handler.ContainerStarter.callback(ContainerStarter.java:52) [junit] at org.jboss.arquillian.impl.handler.ContainerStarter.callback(ContainerStarter.java:41) [junit] at org.jboss.arquillian.impl.event.MapEventManager.fire(MapEventManager.java:63) [junit] Caused by: java.lang.ClassNotFoundException: org.glassfish.deployapi.SunDeploymentFactory [junit] at java.net.URLClassLoader$1.run(URLClassLoader.java:200) [junit] at java.security.AccessController.doPrivileged(Native Method) [junit] at java.net.URLClassLoader.findClass(URLClassLoader.java:188) [junit] at java.lang.ClassLoader.loadClass(ClassLoader.java:303) [junit] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) [junit] at java.lang.ClassLoader.loadClass(ClassLoader.java:248) [junit] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316) [junit] at java.lang.Class.forName0(Native Method) [junit] at java.lang.Class.forName(Class.java:169) [junit] at org.jboss.arquillian.container.jsr88.remote_1_2.JSR88RemoteContainer.initDeploymentManager(JSR88RemoteContainer.java:240) [junit] at org.jboss.arquillian.container.jsr88.remote_1_2.JSR88RemoteContainer.start(JSR88RemoteContainer.java:101) [junit] [junit] [junit] Test employeews.EmployeeWSTest FAILEDI know that I have the path to the container wrong configured. then I though it would be better to use arquillian.xml to set the address to container but it didn't worked.cann you plz tell me what is the best way to test ws. ?
- 
        3. Re: why should i need to know the path to Glassfish in Remote Testingaslak Oct 20, 2010 8:17 AM (in response to hugirat)1 of 1 people found this helpful@BeforeClass/AfterClass will only work correctly in some embedded containers: https://jira.jboss.org/browse/ARQ-56 The GlassFish Remote Container will connect to a running instance, and it tries to do that long before BeforeClass is called. If you manually start the tests domain, point your Aarquillian configuration to the running instance and remove everything that has to do with starting the container.. it should work 
- 
        4. Re: why should i need to know the path to Glassfish in Remote Testinghugirat Oct 20, 2010 9:31 AM (in response to aslak)thank you for your reply, it still doesn't work, but now i have another error with this arquillian.xml: <arquillian xmlns="http://jboss.com/arquillian" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jboss="urn:arq:org.jboss.arquillian.container.glassfish.remote_3"> 
 <glassfish-remote:container>
 <glassfish-remote:deploymentUri>deployer:Sun:AppServer::sddev:4848</glassfish-remote:deploymentUri>
 <glassfish-remote:remoteServerAddress>sddev</glassfish-remote:remoteServerAddress>
 <glassfish-remote:remoteServerHttpPort>8585</glassfish-remote:remoteServerHttpPort>
 </glassfish-remote:container></arquillian> dan had posted it. I just changed the port and the address and i have emited the @BeforClass/AfterClass this is the error what i get: do-test-run: 
 [junit] Testsuite: employeews.EmployeeWSTest
 [junit] Oct 20, 2010 3:10:21 PM org.jboss.arquillian.impl.XmlConfigurationBuilder loadArquillianConfiguration
 [junit] INFO: building configuration from XML file: arquillian.xml
 [junit] [Fatal Error] :12:33: The prefix "glassfish-remote" for element "glassfish-remote:container" is not bound.
 [junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.04 sec
 [junit]
 [junit] ------------- Standard Error -----------------
 [junit] Oct 20, 2010 3:10:21 PM org.jboss.arquillian.impl.XmlConfigurationBuilder loadArquillianConfiguration
 [junit] INFO: building configuration from XML file: arquillian.xml
 [junit] [Fatal Error] :12:33: The prefix "glassfish-remote" for element "glassfish-remote:container" is not bound.
 [junit] ------------- ---------------- ---------------
 [junit] Testcase: initializationError(employeews.EmployeeWSTest): Caused an ERROR
 [junit] Could not create configuration
 [junit] org.jboss.arquillian.spi.ConfigurationException: Could not create configuration
 [junit] at org.jboss.arquillian.impl.XmlConfigurationBuilder.build(XmlConfigurationBuilder.java:132)
 [junit] at org.jboss.arquillian.junit.Arquillian.<init>(Arquillian.java:84)
 [junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
 [junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
 [junit] Caused by: org.xml.sax.SAXParseException: The prefix "glassfish-remote" for element "glassfish-remote:container" is not bound.
 [junit] at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:239)
 [junit] at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
 [junit] at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124)
 [junit] at org.jboss.arquillian.impl.XmlConfigurationBuilder.getDocument(XmlConfigurationBuilder.java:333)
 [junit] at org.jboss.arquillian.impl.XmlConfigurationBuilder.loadArquillianConfiguration(XmlConfigurationBuilder.java:149)
 [junit] at org.jboss.arquillian.impl.XmlConfigurationBuilder.build(XmlConfigurationBuilder.java:122)
 [junit]
 [junit]
 [junit] Test employeews.EmployeeWSTest FAILED
- 
        5. Re: why should i need to know the path to Glassfish in Remote Testingaslak Oct 20, 2010 9:51 AM (in response to hugirat)1 of 1 people found this helpfulyour aliasing the glassfish namespace with jboss and refering to it in your contianer element as glassfish-remote.. xmlns:jboss="urn:arq:org.jboss.arquillian.container.glassfish.remote_3" should be: xmlns:glassfish-remote="urn:arq:org.jboss.arquillian.container.glassfish.remote_3" 
- 
        6. Re: why should i need to know the path to Glassfish in Remote Testinghugirat Oct 20, 2010 10:17 AM (in response to aslak)I have thought jboss i becouse of the company it worked form the IDE manually started, with your help. 
- 
        7. Re: why should i need to know the path to Glassfish in Remote Testinghugirat Oct 28, 2010 4:04 AM (in response to hugirat)hello Aslak,after i have added the demplyment-client i started to get this error:[junit] Testsuite: employeews.EmployeeWSTest[junit] Oct 28, 2010 9:55:22 AM org.jboss.arquillian.impl.XmlConfigurationBuilder loadArquillianConfiguration[junit] INFO: building configuration from XML file: arquillian.xml[junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.248 sec[junit][junit] ------------- Standard Error ----------------- [junit] Oct 28, 2010 9:55:22 AM org.jboss.arquillian.impl.XmlConfigurationBuilder loadArquillianConfiguration[junit] INFO: building configuration from XML file: arquillian.xml[junit] ------------- ---------------- ---------------[junit] Testcase: initializationError(employeews.EmployeeWSTest): Caused an ERROR[junit] com/sun/enterprise/util/LocalStringManagerImpl[junit] java.lang.NoClassDefFoundError: com/sun/enterprise/util/LocalStringManagerImpl[junit] at org.glassfish.deployapi.SunDeploymentFactory.<clinit>(SunDeploymentFactory.java:57)[junit] at java.lang.Class.forName0(Native Method)[junit] at java.lang.Class.forName(Class.java:169)[junit] at org.jboss.arquillian.container.jsr88.remote_1_2.JSR88RemoteContainer.initDeploymentManager(JSR88RemoteContainer.java:240)[junit] at org.jboss.arquillian.container.jsr88.remote_1_2.JSR88RemoteContainer.start(JSR88RemoteContainer.java:101)[junit] at org.jboss.arquillian.impl.handler.ContainerStarter.callback(ContainerStarter.java:52)[junit] at org.jboss.arquillian.impl.handler.ContainerStarter.callback(ContainerStarter.java:41)[junit] at org.jboss.arquillian.impl.event.MapEventManager.fire(MapEventManager.java:63)[junit] at org.jboss.arquillian.impl.context.AbstractEventContext.fire(AbstractEventContext.java:115)[junit] at org.jboss.arquillian.impl.EventTestRunnerAdaptor.beforeSuite(EventTestRunnerAdaptor.java:68)[junit] at org.jboss.arquillian.junit.Arquillian.<init>(Arquillian.java:89)[junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513)[junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513)[junit] Caused by: java.lang.ClassNotFoundException: com.sun.enterprise.util.LocalStringManagerImpl[junit] at java.net.URLClassLoader$1.run(URLClassLoader.java:200)[junit] at java.security.AccessController.doPrivileged(Native Method)[junit] at java.net.URLClassLoader.findClass(URLClassLoader.java:188)[junit] at java.lang.ClassLoader.loadClass(ClassLoader.java:303)[junit] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)[junit] at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[junit] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)[junit][junit][junit] Test employeews.EmployeeWSTest FAILED
 
    