JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Servlet/JSP 討論區  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友   
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Applet使用JNI的範例
luandjack





發文: 45
積分: 0
於 2006-10-14 12:07 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
不好意思,最近我也是因為網路ATM的關係,有需要了解Applet使用JNI的做法,當然關於Applet與JNI的文章不少,然而因為小弟我實在是太笨了,一直無法看懂文章的最後的結論是什麼,因此希望有那位高手大大,可以整理出一個簡單的範例,讓小弟我學習,謝謝

reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
LancelotLiu

電腦籃球唱歌



發文: 100
積分: 1
於 2006-10-17 17:56 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
現在還有哪家銀行還沒做 WebATM 啊??
真好奇 XD


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-18 08:43 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
........不好意思,我們公司是有點遜...>___<,還沒建置好網路ATM。

reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
shasun





發文: 118
積分: 0
於 2006-10-18 09:21 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
在Javaworld關於JNI的文章有很多,
Applet的文章也不少,

不曉得你遇到的問題在哪裡,
或許你是因為看了文章太多,
以致於不知從何下手,建議你把applet及JNI分開
先試著寫一個簡單的Applet,例如:Hello world
再試著寫一個使用JNI的普通main class,
能做到這裡, 其實要在Applet中使用JNI就不困難了,
如果你的問題是去何去產生一個dll,
那就有點超出討論java的範圍了!


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-18 12:29 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
這是我的測試程式,我想主要是因為Applet尋找不到dll的原因吧>_<,希望能有高手幫我找出小弟的問題,感謝

AppletImage.zip (201.38k)


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
shasun





發文: 118
積分: 0
於 2006-10-18 13:13 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
Applet是由client site 執行的,
我好奇的是client site都有WinMsgDll.dll嗎?

如果client site沒有WinMsgDll.dll,
光把WinMsgDll.dll放在web server上是不夠的!!


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-18 14:42 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
shasun:
我之前也有在C:\WinMsgDll.dll 位置放一個WinMsgDll.dll檔,且在WinMsgBox.java 中改成 "System.load("C:\\WinMsgDll.dll");" 執行過後,還是無法正常執行出我要的測試結果,不知道我那裏寫錯,還是配置上的錯誤,請不吝指教,感謝


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-18 21:37 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
終於找到問題所在了,原來是Applet的權限問題,且之前就討論過相關問題了,感謝大大的回覆^___^

http://www.javaworld.com.tw/jute/post/view?bid=29&id=71700&tpg=1&ppg=1&sty=1&age=0#71700


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
shasun





發文: 118
積分: 0
於 2006-10-19 10:18 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
luandjack wrote:
終於找到問題所在了,原來是Applet的權限問題,且之前就討論過相關問題了,感謝大大的回覆^___^

http://www.javaworld.com.tw/jute/post/view?bid=29&id=71700&tpg=1&ppg=1&sty=1&age=0#71700


Applet是有權限問題, 但是你可以做一個Signed Applet,
經過授權認證的Applet只要client同意認證,
即可在你的Applet存取Client的資源,
我有用你的程式實驗並測試過, 可以正常出現提示視窗,
(先提醒你在其中仍有些小地方要注意, 例如:中文字串...)
建議你先試著朝"Signed Applet"方向去尋找,
如真的還有問題, 可以再提出來討論囉!!


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-19 12:15 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
shasun:
不好意思,我按照您說的用Signed Applet來測試,只是我還是必須在java.policy中配置好,才有辦法出現提示視窗,似乎只靠Signed Applet是無法出現提示視窗,不知道大大您的配置是如何呢??
我目前的設定是:
1.java.policy配置。
2.Signed Applet。
3.C:\WINNT\system32\WinMsgDll.dll。
我目前是三項配置缺一不可>___<,不知道大大您的配置是如何呢?我配置Signed Applet的方法是按照之前的文章做的
http://www.javaworld.com.tw/jute/post/view?bid=29&id=168953&tpg=1&ppg=1&sty=1&age=0#168953
不知道大大是否能將您改過的測試程式上傳給我參考呢?

AppletTest.zip (111.66k)


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
shasun





發文: 118
積分: 0
於 2006-10-19 13:52 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
我的確是用Signed Applet而已...
我的環境是tomcat 4.1, JRE 1.4.2...
Zip檔中有一些是Eclipse專案環境的檔案,不要理會...

因為我之前並沒有從html的script來呼叫Applet中JNI的method,
而在你的程式中我所遇到的問題是

如果你先用html的script來呼叫Applet中JNI的method,
即使是Signed Applet也無法正常執行,
所以我的解決方式在Applet本身的method中先執行JNI的method,
之後由html的script來呼叫Applet中JNI的method,
就可以正常執行,

在我修改的範例中,我先按html上的button就會出現錯誤,
但是我先按Applet中的button,再按html上的button,一切正常,

為什麼這樣可以正常執行,我不太清楚, 或許是OS環境或IE版本問題,
這可能要去請教其他的高手了!

AppletTest.zip (61.56k)


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-19 14:41 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
shasun:
感謝shasun大大的幫助,您給我的範例我run起來ok,感恩啦!!


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
shasun





發文: 118
積分: 0
於 2006-10-19 15:16 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
luandjack wrote:
shasun:
感謝shasun大大的幫助,您給我的範例我run起來ok,感恩啦!!


想問一下,在你run的結果是不是也跟我有一樣的情形

先按HTML的button再按Applet的button, 不會正常work
若先按Applet的button再按HTML的button, 一切正常work


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
luandjack





發文: 45
積分: 0
於 2006-10-19 16:39 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
shasun:
是的,我run您的範例的時候,也會有您所說的情況,因此我才將private WinMsgBox win;設成private變數,然後再public void init()裏面加一段 win = new WinMsgBox(); 您給範例才會run的比較正常,假如不這樣改我也會run出您所說的情況,不知道這是不是Applet的限制 @@~??.... 感謝大大^___^


reply to postreply to post
作者 Re:Applet使用JNI的範例 [Re:luandjack]
xiulandengbo





發文: 1
積分: 0
於 2010-03-03 10:20 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
JNA使用方便些,但不知JNA和JNI性能上有何差别
另外哪位高手在APPLET使用JNA成功经验,望赐教,谢谢


reply to postreply to post
» JWorld@TW »  Servlet/JSP 討論區

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8