1. 程式人生 > >dubbo學習-啟動dubbo控制檯dubbo-admin

dubbo學習-啟動dubbo控制檯dubbo-admin


ERROR context.ContextLoader - Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'uriBrokerService': Cannot create inner bean '(inner bean)' of type [com.alibaba.citrus.service.uribroker.impl.URIBrokerServiceImpl$URIBrokerInfo] while setting bean property 'brokers' with key [0]; nested excepti on is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#25': Cannot create inner bean 'server' of type [com.alibaba.citrus.service.uribroker.uri.GenericURIBroker] while setting constructor argument; nested exception is org.springframework.beans.fact ory.BeanCreationException: Error creating bean with name 'server': Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'URIType' of bean class [com.alibaba.citrus.service.uribroker.uri.GenericURIBroker]: Bean property 'URIType' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter? at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:230) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:122) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:287)

網上找了帖子,發現是由於jdk版本的問題,我本地的java環境變數是1.8.具體的詳見:

場景: jdk: 本地安裝了jdk1.7和1.8,但是整體環境變數是jdk1.8 zookeeper:zookeeper-3.4.9 tomcat:tomcat6和tomcat7都有 執行:剛開始藉助網上的教程都直接用tomcat啟動dubbo-admin的war包。 嘗試方式一: 指定tomcat使用jdk1.7(本地系統環境JAVA_HOME依舊是1.8)-啟動管理後臺異常 修改本地環境JAVA_HOME為1.8 -啟動dubbo管理後臺ok
嘗試方式二: 修改tomcat的jdk版本:找到tomcat/bin下面的catalina.bat指令碼(linux下修改.sh指令碼)
將裡面的JAVA_HOME和JRE_HOME設定為本地1.7的路徑。 echo Using CATALINA_BASE:   "%CATALINA_BASE%"
echo Using CATALINA_HOME:   "%CATALINA_HOME%"
echo Using CATALINA_TMPDIR: "%CATALINA_TMPDIR%"
if ""%1"" == ""debug"" goto use_jdk
echo Using JRE_HOME:        "%JRE_HOME%"
goto java_dir_displayed
:use_jdk
echo Using JAVA_HOME:       "%JAVA_HOME%"
:java_dir_displayed
echo Using CLASSPATH:       "%CLASSPATH%"
但是沒有效果,應該還是有某個地方沒有改完全,作為遺留問題,不作為此次核心問題研究。 嘗試方式三: 使用Intellij idea直接執行dubbo-admin原始碼,在idea配置執行資訊,通過指定執行jdk資訊,可以在不改變環境變數的情況下直接使用jdk1.7:


最終ok,當然,最優解決辦法就是通過idea執行。
未輸入密碼時,出現上圖。 訪問localhost:8080/dubbo提示輸入賬號密碼 根據提示輸入之後:
問題算是完美解決。學習一個新東西不能懶惰,而我,恰恰是很懶的一個人。 前幾天看dubbo.io的網站突然變了風格了,我懷疑我是不是網址輸錯了,是一個山寨的dubbo網站,後來才確定沒有走錯,dubbo官方已經開始更新了。不過我好像更喜歡之前的風格(懷舊^_^)