當前位置:學者齋 >

IT認證 >J2EE >

Flex專案與SSH專案整合問題

Flex專案與SSH專案整合問題

  • J2EE
  • 關注:1.24W次

開發專案重用是很重要的開發手段,正直開發一個SSH專案,其中有一功能可重用之前的整個Flex專案(通過BlazeDS與java端互動,所需服務和servlet等有spring和springMVC來管控)。其實Flex專案同其他專案整合原理很簡單,就相當於在其他專案中嵌入flash,不過此處還要考慮通過BlazeDS同java端通訊的問題。

Flex專案與SSH專案整合問題

  flex專案和SSH專案整合過程:

將Flex專案編譯生成的swf檔案盒相應的html檔案以及相關聯的樣式檔案等拷貝到SSH專案中,同時將flex專案所用java類和Spring配置檔案放到了SSH對應目錄下,並配置了檔案。部分截圖如下所示:

現象:

1.在flex專案中,編譯swf檔案時,如果不改變Properties檔案中的相關配置:serverContextRoot="/Flex專案名" serverRootURL="http://localhost:8080//Flex專案名" ,直接使用編譯好的swf檔案進行整合,則前臺提示send failed,控制檯沒有輸出任何訊息。該問題是沒有找到BlazeDS通道的原因,提示見下圖:

2.如果改變Properties 檔案中的`相關配置:serverContextRoot="/ SSH專案名" serverRootURL="http://localhost:8080/ SSH專案名" ,直接使用編譯好的swf檔案進行整合。但根據配置檔案存放位置不同,目前有兩種現象:

1)將Flex所需配置檔案放到上圖中紅色所示位置時,如下圖所示配置時,

登入時,flex端提示:

控制檯提示:

[BlazeDS]HttpFlexSession has not been registered as a listener in for this application so no events will be dispatched to FlexSessionAttributeListeners or FlexSessionBindingListeners. To correct this, register FlexSession as a listener in .

[BlazeDS]Channel endpoint my-amf received request.

[BlazeDS]Channel endpoint my-amf received request.

[BlazeDS]Channel endpoint my-amf received request.

第二次點選登入時flex端提示:

控制檯僅多了一條提示:

[BlazeDS]Channel endpoint my-amf received request.

2)當將Flex所需配置檔案放到下圖中紅色所示位置時,

配置檔案如下圖所示配置時

登入時,flex端提示:

控制檯提示:

[BlazeDS]HttpFlexSession has not been registered as a listener in for this application so no events will be dispatched to FlexSessionAttributeListeners or FlexSessionBindingListeners. To correct this, register FlexSession as a listener in .

[BlazeDS]Channel endpoint my-amf received request.

[BlazeDS]Channel endpoint my-amf received request.

[BlazeDS]Channel endpoint my-amf received request.

第二次點選登入時同樣是這個問題

本文僅簡短的描述了整合過程極有可能遇到的問題現象,並沒有實質性的解決這個問題,但上文能反應出兩個問題,一個是Flex同java互動的通道問題,另一個是即便能通訊了,但仍舊有些配置需要做改善,以使其能有正確呼叫所需服務。暫做記錄,後續會跟蹤此問題。

標籤: Flex SSH 專案 整合
  • 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-tw/itrz/j2ee/6vp99e.html