2011-01-30 14 views
0

我有一個很奇怪的問題。我有一個JNLP文件工作得很好,當一個屬性是手工編輯:從PHP生成的JNLP失敗

<property name="javaws.username" value="dummy" /> 

但是當從PHP產生像這樣一個真實的值相同的屬性:

<property name="javaws.username" value="fb1331463499" /> 

它顯示了在運行時爲空。我已經檢查了Xcode中的jnlp文件以查找控制字符,但Xcode不顯示任何內容。

任何幫助表示讚賞。

+1

您是否嘗試過手動編輯時的真實價值?如果是,並且工作正常,請嘗試在兩個文件之間運行差異。 – greg0ire 2011-01-30 23:13:19

回答

0

通過將heredoc格式移動到文件末尾來移除不需要的ctrl-J來解決。

不是一個偉大的soln,但它的工作。

1

仍然有問題。

我追查下來,在最後這條線在JNLP:

<jnlp spec="1.0+" codebase="http://fgdztgab.joyent.us/snowmen" href="snowman.jnlp"> 

JNLP文件是一個奇怪的黑客攻擊。如果可用,他們基本上會將自己從href參數中重新加載。這允許他們爲jnlp文件使用他們自己的緩存和版本管理機制。不幸的是,這意味着它正在重新加載而沒有get參數。我可能可以將獲取參數添加到href中,但是由於它的可選參數,我只是把它拿出來了。

解決了這個問題。

故事的道德:如果你包含它,請注意href的作用。

0

href導致從該URL(相對於代碼庫或完全限定)加載jnlp文件,如果您正在生成動態jnlp,它將取代動態信息。在這種情況下,你可以離開了JNLP HREF防止重載,但只是供參考 - 從JNLP標籤參考頁 - http://lopica.sourceforge.net/ref.html

注意,該Java Web Start的需要HREF列出您的應用程序在網絡啓動 應用程序管理器。