2011-02-25 53 views
0

我遇到ConverterUtil.java文件「convertToString」方法的問題。這個方法被存根使用,它試圖將日期轉換爲字符串。我遇到的問題是當它試圖轉換格式不正確的日期時發生錯誤,並且我們無法收到響應。我們是否可以在創建存根時修改ConverterUtil.java文件

Acutally converterutil做得很好,因爲當它收到dateTimestamp是不正確的&它有日期&時間像「04-12-2010T00:00:00」之間的字母「T」。我們無法改變我們如何收到不幸的日期時間格式。

我們想重寫converterUtil的「convertToString」方法,但它是靜態類,所以我們不能重寫。對Axis2.jar重新打包不是個好主意,因爲我們確實想要這樣做。此外,Maven依賴並沒有幫助我們重寫convertUtil,因爲stub在我們的項目&中用作JAR,我們已經嘗試了maven依賴,但它沒有幫助。

ConverterUtil用於存根&的響應類中,我們想覆蓋它。所以有可能以某種方式修改wsdl2java,忽略ConverterUtil文件並開始使用自定義文件。換句話說,是否有可能控制存根實際上是如何生成的。

回答

0

我還不清楚你的問題。 讓我解釋你是消費者嗎? Web服務是否返回一個你不想要的日期? 如果答案是肯定的,那麼在它打擊存根文件之前更改XMl消息。 你可以做什麼去你axis2.xml文件,並轉到節階段安全階段後聲明自己像相

<phase name="Validator"> 
     <handler name="DateValidator" 
       class="com.validator.DateHandler"/> 
    </phase> 

創建一個名爲DateHandler類,並試圖通過提取XML改變值來自SOAPContext。

+0

感謝阿布舍克給你的時間。是的,我是消費者,我無法更改XML消息,因爲它來自我無法控制的其他地方。所以我不能要求軸忽略它。 Axis使用wsdl2java utitlity生成了存根,它創建了針對wsdl的不同的支持java。我想控制生成的文件或重寫動態生成的方法 – user593029 2011-04-04 21:07:37

相關問題