你在<package name="struts2" extends="struts-default"> 中加一個namespace試試
<package name="struts2" namespace="/" extends="struts-default">
@亮
你的action路徑寫錯了,,在/ namespace里沒有這個action
@abcdefgxw
我是唯物主義者,更不是基督信徒,不相信有上帝,還是相信有外星人吧,哈哈。感謝你關注我的文章!
@王大力
這也更象windows下的程序了,如果用戶不了解java,在windows下執行jar文件才更奇怪呢。哈哈。 象jbuilder等很多windows版的java系統都是這樣做的。這就叫入鄉隨俗!
@心夢帆影
原來是這樣啊,這就沒辦法了,已經做那么多了。不過在struts2中最好還是使用.action或其他的.xxx來作為后綴。這樣不容易與servlet等其他內容沖突。沒有后綴的url盡量少用。struts2官方建議所有的web資源都使用.action或其他后綴來訪問。這樣有利于struts 2管理。盡量不要直接訪問servlet、jsp等內容。
到request.getParameter已經和socket沒關系了,servlet容器會分析http請求消息,并將分析的結果保存在HttpServletRequest對象中。而getParameter方法就是從HttpServletRequest對象中獲得相應的值。
是的,ie調用了windows的socket api,java的socket在windows下也是調用了windows的api。
看看http協議的定義就知道了,是通過http消息體發送post請求數據的
http是建立在TCP基礎上的,socket只是通信框架,并不是協議。
struts 2的過濾器只是選擇由struts 2處理的URL,與其他的無關,不知你說的struts2.1.6的默認的路徑映射功能是指什么?
@心夢帆影
你項目中無后綴的是什么,是Servlet?設成.action不應該有什么問題。只有Action由Struts 2處理,其他的仍然由Servlet容器處理。我也用的是struts2.1.6,沒什么問題。但我的項目中沒有無后綴的。全都是.action。就算是靜態頁面,也映射成了.action。
將<url-pattern>的值改成*.action也可以。FCKEditor也有這樣的問題。個人感覺改成*.action更好,否則需要在struts 2的action前前web,有些麻煩。
@小毅
這個方法不光是安裝程序哦。還有一個實時更新的功能,如果服務端的程序更新的,就不用每個客戶端再次分發一遍安裝程序了,只需要再運行jnlp文件就可以直接下載了。哈哈
@MC
對,這個寫錯了,已經改過來了。感謝MC的提醒。哈哈
stub不是用來修改的,是用來調用了,就將stub當成普通類好了(普通的Java類怎么用,stub類就怎么用)。
你的異常我沒遇到過。我使用其他方法只是做測試。實際應用還是用stub的。否則會很麻煩。
不使用stub有時很麻煩。我一般很少使用其他方式調用。你的那段代碼就算調試成功,以后用時也會很麻煩,只是調用了一個方法,弄這么一大堆代碼。關于RPC還有有其他方式,只需要了解一下原理就可以。至于真正開發時,一般都用stub。你見用過.net調用webservice用這么多代碼嗎?哈哈
struts 2的Action屬性可以讀取請求參數值,如果是變化的,可以通過請求參數值提交。
輸入jar -help,看看幫助
我后面還一個“.”呢,你沒輸入
re: 銀河系列原創教程 銀河使者 2009-05-19 19:23
jni還沒有,也許以后會有的,哈哈
@Harold.Zhang
我的有啊,不知你是怎么生成的,編寫和我的一樣嗎?
你的get_return可以返回值嗎?
是的,題目打錯了,改過來了,哈哈,想寫網絡,不知怎么著寫成數據庫了。暈
re: 如何成為優秀員工! 銀河使者 2009-05-18 12:56
如果自己成功了,說什么都是正確的,如果沒有成功,那么只有默默地把自己變成一個成功者。再發表完全屬于自己的一番言論,也許會變成真理。想想bill gates如果沒有成功,會有這些多bill gates成功法則、成功箴言這樣的書嗎?
成功沒有固定的公式,任何成功法則都是私有的(private),別人不可訪問,當然,自己的后人也不可能繼承。其他人要想從自己身上學到真正的成功法則,就只有根據外在的表現自己領悟了。
SOAP消息是底層的信息,除非提供了接口,否則無法獲得這些信息。我一般是通過模塊獲得soap消息,但通過其他方式還沒試過。
你的程序有語法錯誤,你是手工編譯的嗎?還是用eclipse?
那個庫沒引用。你可以引用axis2中的所有的jar文件試試
axis2把有些簡單類型封裝到一個類中了,你看看自動生成的stub類,里面有類型所指定的類,你建立個對象,賦一下值就可以了。
要想在services.xml中加中文,需要將編碼設為UTF-8或GBK。你怎么部署的?再刷新一下,或重啟tomcat,將tomcat的work目錄清空看看
@亦凡
你用的是jdk的哪個版本,tomcat和開發webservice是用的同一個jdk版本嗎?
@dennis
實際上,學習并沒有絕對的重點,不管是理論(如tcp/ip、網絡層等)或是api都需要會,不會哪個都寫不出優秀的程序。但個人認為在學習理論之前,應該先了解一下api,也就是說,在寫出優秀的程序之前,先要能寫出程序。如果連helloword都寫不出來,又怎么談高質量的程序呢?而本系列文章就是先讓讀者能寫出程序,至于寫出優秀的程序,那并不是本系列文章的目的。
還有就是,學習網絡編程的重點應該放在實踐上,不管是學的tcp/ip,還是學的api、socket這些東西,都需要將它們轉換成代碼才可以。否則學了只能應付考試。因此,無論是api,還是網絡理論,都應該是重點。另外,api可不是很簡單的。并不是有一堆方法,調用就完了。有很多參數和調用方法是和理論聯系非常緊密的。因此,最好理論和api一起學,否則用什么實踐呢?直接訪問網卡驅動?
我這個系列文章才剛開始,估計得有上百篇文章,還沒進入大規模編程的階段。另外,你說的熟悉什么 TCP/IP協議、并發模型這些都有些抽象。實際上,不管是網絡編程,還是多核編程,關鍵看你做出來什么。至于熟悉這個或那個,只是知識量而已。只有做出有影響力的產品才是真的。還有并不一定技術高深就是好的,關鍵看能提供多少用戶價值。
當然,如果發布到linux/unix,也可以采用類似的方法
其實要將java程序變成exe不需要這么麻煩,只需要使用任何一種可以生成exe文件的語言,如C#、VB、delphi、C++,編寫一個簡單的沒有form的exe程序。然后在程序中通過windows api函數調用javaw -jar my.jar(my.jar是一個java GUI程序)即可。在運行時只需要執行這個exe就可以了。看看我寫的文章:
http://www.aygfsteel.com/nokiaguy/archive/2009/04/15/265742.html弄成exe的好處是可以使java程序更符合windows用戶的習慣。否則就得執行bat或cmd文件,或直接執行jar包。這對于windows用戶來說比較別扭。象很多基于java的程序在發布到windows上時都是使用的exe,而不是jar。
需要在web.xmll文件中加入下面內容,加了吧?
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
這個改不了,但使用services.xml文件來發布webservice,就是name了。試試看
在服務端的控件臺中,或eclipse的console里
@菜板
誰說的,你用的是哪個eclipse版本,我用的eclipse3.4,就是直接在可視化界面里設的,輸入了26個字母
為什么要導出再導入,是備份?直接修改成.abcdefghijklmnopqrstuvwxyz不就行了!
啟動線程必須使用start方法,run方法是由系統負責調用的。如果直接調用run方法,并不是啟動線程,而是直接調用了類的一個普通方法,也就相當于將run變成了一個普通的方法。
可以使用一個長度為256的數組來保存字符的出現次數,索引就是字符的ASCII,再用一個數組或鏈表保存字符出現的順序(保存了字符的ASCII,也就是前面數組的索引)