Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dubbo all in one fail to start from a tomcat server when spring framework is absent #2570

Closed
yangfuhai opened this issue Sep 27, 2018 · 16 comments

Comments

@yangfuhai
Copy link

错误如下:

27-Sep-2018 13:39:35.736 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
	at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520)
	at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501)
	at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:120)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5181)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
	at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1678)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:463)
	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:413)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1466)
	at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307)
	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1399)
	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:828)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
	at sun.rmi.transport.Transport$1.run(Transport.java:178)
	at sun.rmi.transport.Transport$1.run(Transport.java:175)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:174)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:557)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:812)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:671)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

maven依赖如下:

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>dubbo</artifactId>
    <version>2.6.3</version>
    <exclusions>
        <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
        </exclusion>
    </exclusions>
</dependency>
@diecui1202
Copy link

@yangfuhai could u pls. provide a demo to reproduce this problem?

@yangfuhai
Copy link
Author

@yangfuhai could u pls. provide a demo to reproduce this problem?

已经定位到问题,原因是当排除spring依赖后,dubbo 2.6.3 下有web-fragment.xml文件,web-fragment.xml会自动去加载 org.springframework.web.context.ContextLoaderListener 导致tomcat无法正常启动。

建议修改:

ContextLoaderListener 修改为 DubboContextLoaderListener,在 DubboContextLoaderListener 里去查看spring是否存在,存在就启动spring 的 ContextLoaderListener,否则什么都不做。

@diecui1202
Copy link

@ralf0131 pls. check this problem.

@ralf0131
Copy link
Contributor

If you don't run Dubbo with Tomcat + spring, then don't need this file. If file is intended to bed used for Dubbo + Tomcat + Spring.

Please remove the dependency to dubbo-config-spring

@diecui1202
Copy link

I think he uses com.alibaba:dubbo, all in one jar, so can not exclude this dependency.

@yangfuhai
Copy link
Author

I think he uses com.alibaba:dubbo, all in one jar, so can not exclude this dependency.

之前的版本并没有这个问题。2.6.3 才有的。

@ralf0131
Copy link
Contributor

ralf0131 commented Oct 7, 2018

@yangfuhai In this case, please don't depend on the all in one dependency.

    <groupId>com.alibaba</groupId>
    <artifactId>dubbo</artifactId>
    <version>2.6.3</version>

And try to depend on the specific module you wish to use, e.g.

    <groupId>com.alibaba</groupId>
    <artifactId>dubbo-config-api</artifactId>
    <version>2.6.3</version>

@ralf0131
Copy link
Contributor

ralf0131 commented Oct 7, 2018

@diecui1202

I think he uses com.alibaba:dubbo, all in one jar, so can not exclude this dependency.

Why we need to shade all the dependency into one jar? This make it difficult to customize the dependency.
I think this is something worth discussion.

@SKYhuangjing
Copy link

@diecui1202

I think he uses com.alibaba:dubbo, all in one jar, so can not exclude this dependency.

Why we need to shade all the dependency into one jar? This make it difficult to customize the dependency.
I think this is something worth discussion.

provide dubbo-all-without-spring module, just like dubbo-all, but dubbo-all-without-spring module did't rely spring-framework and have no dubbo-xxx-spring module

I have forked dubbo repo and make dubbo-all-without-spring module in mine repo.

if offical don't provide, you can make it yourself.

@ralf0131
Copy link
Contributor

Hi,

I would suggest to use maven profile to do this kind of customization.

For example, use the default profile for most of the dependencies, and use spring profile to include spring dependency.

@beiwei30 beiwei30 changed the title dubbo无法在 【非spring + tomcat】环境下运行 dubbo all in one fail to start from a tomcat server when spring framework is absent Oct 12, 2018
@beiwei30
Copy link
Member

@yangfuhai, would you mind to try out the change I proposed in #2640

@ralf0131
Copy link
Contributor

Hi,

As another work-around, you may try to skip the annotation scan for dubbo-all.jar, so that this org.springframework.web.context.ContextLoaderListener won't be scaned or loaded.

Read this see Configure your web application and Exclude JARs from scanning section for more details.

@SKYhuangjing
Copy link

provide dubbo-all can be easy integrate to our app, if no dubbo-all, we have to need rely multi dubbo-xxx, it's not easy job(That is very painful for rookie(just like me...))
and may be dev don't wanna change the tomcat(or wildfly), in my humble opinion, this work is also more hardly.
as a middleware, i hope dubbo can provide a more easy usage option in non-spring runtime.,just like dubbo-all module. Of course this may be based on the fact that I am a rookie and I hope that the integrated dubbo upgrade can be easier.

@beiwei30
Copy link
Member

@SKYhuangjing @yangfuhai I believe I've finalized the solution I proposed in pull request
#2640, would you mind to try it out?

@beiwei30 beiwei30 mentioned this issue Oct 16, 2018
6 tasks
diecui1202 pushed a commit that referenced this issue Oct 16, 2018
* #2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests
CrazyHZM pushed a commit to CrazyHZM/dubbo that referenced this issue Dec 6, 2018
* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this issue Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this issue Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this issue Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
CrazyHZM pushed a commit to CrazyHZM/dubbo that referenced this issue Dec 6, 2018
* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this issue Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
@beiwei30
Copy link
Member

it's been fixed.

@SKYhuangjing
Copy link

i have upgraded dubbo version to 2.7.0, it's good solution for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants