Uploaded image for project: 'Spring Web Services'
  1. Spring Web Services
  2. SWS-644

ejb 2.1 dependency jar - change to freely available jar in M2 Central

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 2.0 M1, 2.0 M2, 2.0 M3
    • Fix Version/s: 2.1.4
    • Component/s: None
    • Labels:
      None

      Description

      The spring-ws-parent and spring-ws-support module poms reference the javax.ejb/ejb/2.1 Maven dependency. Because of Sun/Oracle binary distribution restrictions, this dependency does not exist in Maven Central and prevents the build from executing normally upon a fresh checkout from trunk.

      To guarantee a clean build with no problems, this dependency should be replaced by referencing a freely available unencumbered .jar instead.

      Apache Geronimo provides such distributable .jars for all of the EJB/JEE specifications. A patch will be attached with the following dependency applied instead of the defunct ejb 2.1 .jar:

      <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-ejb_2.1_spec</artifactId>
      <version>1.1</version>
      <scope>provided</scope>
      </dependency>

      Once the patch is applied, the project should build successfully after a checkout without any problems.

        Activity

        Hide
        lhazlewood Les Hazlewood added a comment -

        See attached patch for pom modifications.

        Show
        lhazlewood Les Hazlewood added a comment - See attached patch for pom modifications.
        Hide
        guitarking117 Nick Williams added a comment -

        Sure would be nice to see this fixed. Same problem with javax.jms:jms:jar:1.1. Pain. In. The. BUTT to compile.

        Show
        guitarking117 Nick Williams added a comment - Sure would be nice to see this fixed. Same problem with javax.jms:jms:jar:1.1. Pain. In. The. BUTT to compile.
        Hide
        guitarking117 Nick Williams added a comment -

        Silly me. I can fix this myself! Pull request submitted.

        I updated the build to use freely-available JAR files for JMS 1.1 and EJB 2.1, as the original JAR files do not exist in Maven Central and are no longer in the Spring Release repository.

        Special Note

        The following 7 tests fail for me without making any changes to the project (immediately after forking/cloning, git status says no changes):

        Tests in error: 
          registration(org.springframework.ws.server.endpoint.mapping.CgLibProxyRegistrationTest)
          registration(org.springframework.ws.server.endpoint.mapping.JdkProxyRegistrationTest)
          invoke(org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMappingTest)
          registration(org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMappingTest)

        Tests in error: 
          multipleSchemaMatch(org.springframework.ws.test.support.matcher.SchemaValidatingMatcherTest)
          multipleSchemaNotOk(org.springframework.ws.test.support.matcher.SchemaValidatingMatcherTest)
          multipleSchemaDifferentOrderNotOk(org.springframework.ws.test.support.matcher.SchemaValidatingMatcherTest)

        The first four appear to fail because I'm using IPv6 on a Mac. There may or may not be anything you can do about this:

        java.lang.IllegalStateException: Failed to load ApplicationContext
        	at org.springframework.test.context.CacheAwareContextLoaderDelegate.loadContext(CacheAwareContextLoaderDelegate.java:99)
        	at org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:122)
        	at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:105)
        	at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:74)
        	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:312)
        	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:211)
        	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:288)
        	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
        	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:284)
        	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231)
        	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:88)
        	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
        	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
        	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
        	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
        	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
        	at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
        	at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71)
        	at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
        	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174)
        	at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
        	at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:138)
        	at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:125)
        	at org.apache.maven.surefire.Surefire.run(Surefire.java:132)
        	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        	at java.lang.reflect.Method.invoke(Method.java:601)
        	at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:290)
        	at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:818)
        Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'endpoint' defined in class path resource [org/springframework/ws/server/endpoint/mapping/payloadRootAnnotationMethodEndpointMapping.xml]: Initialization of bean failed; nested exception is java.lang.IllegalArgumentException: error at ::0 can't find referenced pointcut loggedMethod
        	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:532)
        	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461)
        	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295)
        	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
        	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292)
        	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
        	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:626)
        	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
        	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
        	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:120)
        	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60)
        	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:100)
        	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:248)
        	at org.springframework.test.context.CacheAwareContextLoaderDelegate.loadContextInternal(CacheAwareContextLoaderDelegate.java:64)
        	at org.springframework.test.context.CacheAwareContextLoaderDelegate.loadContext(CacheAwareContextLoaderDelegate.java:91)
        	... 29 more
        Caused by: java.lang.IllegalArgumentException: error at ::0 can't find referenced pointcut loggedMethod
        	at org.aspectj.weaver.tools.PointcutParser.parsePointcutExpression(PointcutParser.java:315)
        	at org.springframework.aop.aspectj.AspectJExpressionPointcut.buildPointcutExpression(AspectJExpressionPointcut.java:208)
        	at org.springframework.aop.aspectj.AspectJExpressionPointcut.buildPointcutExpression(AspectJExpressionPointcut.java:194)
        	at org.springframework.aop.aspectj.AspectJExpressionPointcut.checkReadyToMatch(AspectJExpressionPointcut.java:183)
        	at org.springframework.aop.aspectj.AspectJExpressionPointcut.getClassFilter(AspectJExpressionPointcut.java:164)
        	at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:208)
        	at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:262)
        	at org.springframework.aop.support.AopUtils.findAdvisorsThatCanApply(AopUtils.java:294)
        	at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.findAdvisorsThatCanApply(AbstractAdvisorAutoProxyCreator.java:118)
        	at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.findEligibleAdvisors(AbstractAdvisorAutoProxyCreator.java:88)
        	at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.getAdvicesAndAdvisorsForBean(AbstractAdvisorAutoProxyCreator.java:69)
        	at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.wrapIfNecessary(AbstractAutoProxyCreator.java:359)
        	at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.postProcessAfterInitialization(AbstractAutoProxyCreator.java:322)
        	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:412)
        	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1494)
        	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)
        	... 43 more

        I'm not sure why the last three or failing. No errors on the screen.

        Since these tests fail consistently without my making any changes, I'm not worried about them. But it would be nice to track them down.

        Show
        guitarking117 Nick Williams added a comment - Silly me. I can fix this myself! Pull request submitted. I updated the build to use freely-available JAR files for JMS 1.1 and EJB 2.1, as the original JAR files do not exist in Maven Central and are no longer in the Spring Release repository. Special Note The following 7 tests fail for me without making any changes to the project (immediately after forking/cloning, git status says no changes): Tests in error: registration(org.springframework.ws.server.endpoint.mapping.CgLibProxyRegistrationTest) registration(org.springframework.ws.server.endpoint.mapping.JdkProxyRegistrationTest) invoke(org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMappingTest) registration(org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMappingTest) Tests in error: multipleSchemaMatch(org.springframework.ws.test.support.matcher.SchemaValidatingMatcherTest) multipleSchemaNotOk(org.springframework.ws.test.support.matcher.SchemaValidatingMatcherTest) multipleSchemaDifferentOrderNotOk(org.springframework.ws.test.support.matcher.SchemaValidatingMatcherTest) The first four appear to fail because I'm using IPv6 on a Mac. There may or may not be anything you can do about this: java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.CacheAwareContextLoaderDelegate.loadContext(CacheAwareContextLoaderDelegate.java:99) at org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:122) at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:105) at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:74) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:312) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:211) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:288) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:284) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:88) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71) at org.junit.runners.ParentRunner.run(ParentRunner.java:300) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174) at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:138) at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:125) at org.apache.maven.surefire.Surefire.run(Surefire.java:132) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:290) at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:818) Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'endpoint' defined in class path resource [org/springframework/ws/server/endpoint/mapping/payloadRootAnnotationMethodEndpointMapping.xml]: Initialization of bean failed; nested exception is java.lang.IllegalArgumentException: error at ::0 can't find referenced pointcut loggedMethod at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:532) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:626) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:120) at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60) at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:100) at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:248) at org.springframework.test.context.CacheAwareContextLoaderDelegate.loadContextInternal(CacheAwareContextLoaderDelegate.java:64) at org.springframework.test.context.CacheAwareContextLoaderDelegate.loadContext(CacheAwareContextLoaderDelegate.java:91) ... 29 more Caused by: java.lang.IllegalArgumentException: error at ::0 can't find referenced pointcut loggedMethod at org.aspectj.weaver.tools.PointcutParser.parsePointcutExpression(PointcutParser.java:315) at org.springframework.aop.aspectj.AspectJExpressionPointcut.buildPointcutExpression(AspectJExpressionPointcut.java:208) at org.springframework.aop.aspectj.AspectJExpressionPointcut.buildPointcutExpression(AspectJExpressionPointcut.java:194) at org.springframework.aop.aspectj.AspectJExpressionPointcut.checkReadyToMatch(AspectJExpressionPointcut.java:183) at org.springframework.aop.aspectj.AspectJExpressionPointcut.getClassFilter(AspectJExpressionPointcut.java:164) at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:208) at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:262) at org.springframework.aop.support.AopUtils.findAdvisorsThatCanApply(AopUtils.java:294) at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.findAdvisorsThatCanApply(AbstractAdvisorAutoProxyCreator.java:118) at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.findEligibleAdvisors(AbstractAdvisorAutoProxyCreator.java:88) at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.getAdvicesAndAdvisorsForBean(AbstractAdvisorAutoProxyCreator.java:69) at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.wrapIfNecessary(AbstractAutoProxyCreator.java:359) at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.postProcessAfterInitialization(AbstractAutoProxyCreator.java:322) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:412) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1494) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) ... 43 more I'm not sure why the last three or failing. No errors on the screen. Since these tests fail consistently without my making any changes, I'm not worried about them. But it would be nice to track them down.
        Hide
        arjen.poutsma Arjen Poutsma added a comment -
        Show
        arjen.poutsma Arjen Poutsma added a comment - Git pull request at https://github.com/SpringSource/spring-ws/pull/4
        Hide
        arjen.poutsma Arjen Poutsma added a comment -

        Fixed!

        Show
        arjen.poutsma Arjen Poutsma added a comment - Fixed!

          People

          • Assignee:
            arjen.poutsma Arjen Poutsma
            Reporter:
            lhazlewood Les Hazlewood
          • Votes:
            2 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: