1. 程式人生 > >啟動dubbo時報錯: For input string: "0:0:xxxx:20880"

啟動dubbo時報錯: For input string: "0:0:xxxx:20880"

報錯資訊如下:
Exception in thread "main" java.lang.NumberFormatException: For input string: "0:0:0:2ce0:1f1:6d77:56fd%15:20880"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at com.alibaba.dubbo.common.URL.valueOf(URL.java:239)
at com.alibaba.dubbo.config.ServiceConfig.exportLocal(ServiceConfig.java:503)
at com.alibaba.dubbo.config.ServiceConfig.doExportUrlsFor1Protocol(ServiceConfig.java:465)
at com.alibaba.dubbo.config.ServiceConfig.doExportUrls(ServiceConfig.java:281)
at com.alibaba.dubbo.config.ServiceConfig.doExport(ServiceConfig.java:242)
at com.alibaba.dubbo.config.ServiceConfig.export(ServiceConfig.java:143)
at com.alibaba.dubbo.config.spring.ServiceBean.onApplicationEvent(ServiceBean.java:109)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:163)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:136)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:381)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:335)
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:855)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:83)
at com.zxfc.dubbo.demo.service.impl.Provider.main(Provider.java:9)


Spring配置檔案applicationContext-service.xml內容如下:


<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"  
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"  
       xsi:schemaLocation="http://www.springframework.org/schema/beans  
       http://www.springframework.org/schema/beans/spring-beans.xsd  
       http://code.alibabatech.com/schema/dubbo  
       http://code.alibabatech.com/schema/dubbo/dubbo.xsd">  
    <!--定義了提供方應用資訊,用於計算依賴關係;在 dubbo-admin 或 6-monitor 會顯示這個名字,方便辨識-->  
    <dubbo:application name="demotest-provider" owner="programmer" organization="dubbox"/>  
    <!--使用 zookeeper 註冊中心暴露服務,注意要先開啟 zookeeper-->  
    <dubbo:registry address="zookeeper://127.0.0.1:2181"/>  
    <!-- 用dubbo協議在20880埠暴露服務 -->  
    <dubbo:protocol  name="dubbo" port="20887" />  
    <!--使用 dubbo 協議實現定義好的 api.PermissionService 介面-->  
    <dubbo:service interface="com.zxfc.dubbo.demo.service.DemoService" ref="demoService" protocol="dubbo" />  
    <!--具體實現該介面的 bean-->  
    <bean id="demoService" class="com.zxfc.dubbo.demo.service.impl.DemoServiceImpl"/>  
</beans> 


解決方法:經過幾天的努力問題解決了,解決方法很簡單,在  <dubbo:protocol  name="dubbo" port="20887" />中增加host="192.168.0.10 5"伺服器地址就行了, 在公司的伺服器上沒有加這個也沒有報錯,所以具體原因有待深入研究dubbo後再詳細解答