<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Philipz學習日誌</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/" />
    <link rel="self" type="application/atom+xml" href="http://server.everfine.com.tw/blog/atom.xml" />
    <id>tag:server.everfine.com.tw,2008-10-20:/blog//1</id>
    <updated>2009-06-30T14:44:17Z</updated>
    <subtitle>此Blog是為了將每天的學習心得、偶然的發現跟突發奇想記錄下來，並與大家分享，以免白白將突然的想法或發現隨時間淡忘掉。</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Pro 4.21-en</generator>

<entry>
    <title>HTML Parsers in Java</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/06/html-parsers-in.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.294</id>

    <published>2009-06-30T08:43:50Z</published>
    <updated>2009-06-30T14:44:17Z</updated>

    <summary>Reference: HTML Parser 对于网页格式中的文本，提取其内容 Because need to parse HTML page to get some parameters of Java Applet tag. The HTML...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>Reference: <a href="http://blog.donews.com/qwedcxsaz/archive/2006/03/06/755275.aspx">HTML Parser 对于网页格式中的文本，提取其内容</a><br />
Because need to parse HTML page to get some parameters of Java Applet tag.<br />
The <a href="http://htmlparser.sourceforge.net/">HTML Parser</a> is a Java library. It support those tag below.</p>
<p><code class="c">
NodeFilter textFilter = new NodeClassFilter(TextNode.class);<br />
NodeFilter linkFilter = new NodeClassFilter(LinkTag.class);<br />
NodeFilter appletFilter = new NodeClassFilter(AppletTag.class);<br />
NodeFilter imageFilter = new NodeClassFilter(ImageTag.class);<br />
NodeFilter frameFilter = new NodeClassFilter(FrameTag.class);<br />
NodeFilter scriptFilter = new NodeClassFilter(ScriptTag.class);<br />
NodeFilter formFilter = new NodeClassFilter(FormTag.class);<br />
NodeFilter objectFilter = new NodeClassFilter(ObjectTag.class);<br />
NodeFilter remarkFilter = new NodeClassFilter(RemarkNode.class);<br />
NodeFilter metaFilter = new NodeClassFilter(MetaTag.class);</code></p><p>The complete java code is:</p><p><code class="c">import java.util.ArrayList;<br />import java.util.Hashtable;<br />import java.util.List;<br /><br />import org.htmlparser.Node;<br />import org.htmlparser.NodeFilter;<br />import org.htmlparser.Parser;<br />import org.htmlparser.filters.AndFilter;<br />import org.htmlparser.filters.HasChildFilter;<br />import org.htmlparser.filters.NodeClassFilter;<br />import org.htmlparser.filters.TagNameFilter;<br />import org.htmlparser.http.ConnectionManager;<br />import org.htmlparser.tags.AppletTag;<br />import org.htmlparser.util.NodeList;<br />import org.htmlparser.util.ParserException;<br />import org.htmlparser.util.SimpleNodeIterator;<br /><br />public class GetTaiFex {<br /><br />&nbsp;&nbsp;&nbsp; static List&lt;String&gt; findout = new ArrayList&lt;String&gt;();<br />&nbsp;&nbsp;&nbsp; public static void main(String[] args) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; try {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ConnectionManager cm = new ConnectionManager();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Hashtable&lt;String, String&gt; properties = new Hashtable&lt;String, String&gt;();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; properties.put("User-Agent", "IE/6.0");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //properties.put("Cookie", "ValidLogin=1");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; cm.setRequestProperties(properties);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Parser.setConnectionManager(cm);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Parser parser = new Parser(<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; "http://java.sun.com/applets/jdk/1.4/demo/applets/Animator/example1.html");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NodeFilter appletFilter = new NodeClassFilter(AppletTag.class);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NodeList list = parser.parse(appletFilter);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; processNodeList(list, "param");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println(findout);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; } catch (ParserException e) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // TODO Auto-generated catch block<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; e.printStackTrace();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; private static void processNodeList(NodeList list, String keyword) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; SimpleNodeIterator iterator = list.elements();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; while (iterator.hasMoreNodes()) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Node node = iterator.nextNode();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; NodeList childList = node.getChildren();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (null == childList)<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; String result = node.getText();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (result.indexOf(keyword) != -1){<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; findout.add(result);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else{<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; processNodeList(childList, keyword);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; }<br />}<br /><br /></code></p>]]>
        
    </content>
</entry>

<entry>
    <title>Smack API</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/06/smack-api.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.293</id>

    <published>2009-06-30T06:35:28Z</published>
    <updated>2009-06-30T08:37:50Z</updated>

    <summary>Smack is an Open Source XMPP (Jabber) Java client library. Writing a gTalk (Jabber/XMPP) client in Java has a example...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>Smack is an Open Source XMPP (Jabber) Java client library.<br />
<a href="http://abhijeetmaharana.com/blog/2007/10/28/writing-a-gtalk-jabberxmpp-client/">Writing a gTalk (Jabber/XMPP) client in Java</a> has a example code. But it has exception.<br />
<code class="cmd"><br />
java.lang.NullPointerException<br />
	at org.jivesoftware.smack.sasl.SASLMechanism.authenticate(SASLMechanism.java:117)<br />
</code><br />
Just set SASL Authentication is disable, like below.<br />
config.setSASLAuthenticationEnabled(false);</p>

<p>The complete java code is:</p><p><code class="c">import java.util.*;<br />import java.io.*;<br /><br />import org.jivesoftware.smack.Chat;<br />import org.jivesoftware.smack.packet.Message;<br />import org.jivesoftware.smack.ConnectionConfiguration;<br />import org.jivesoftware.smack.MessageListener;<br />import org.jivesoftware.smack.Roster;<br />import org.jivesoftware.smack.RosterEntry;<br />import org.jivesoftware.smack.XMPPConnection;<br />import org.jivesoftware.smack.XMPPException;<br /><br />public class ChatClient implements MessageListener {<br />&nbsp;&nbsp;&nbsp; XMPPConnection connection;<br /><br />&nbsp;&nbsp;&nbsp; public void login(String userName, String password) throws XMPPException {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ConnectionConfiguration config = new ConnectionConfiguration(<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; "talk.google.com", 5222, "gmail.com");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; config.setCompressionEnabled(true);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; config.setSASLAuthenticationEnabled(false);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; connection = new XMPPConnection(config);<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; connection.connect();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; connection.login(userName, password);<br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; public void sendMessage(String message, String to) throws XMPPException {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Chat chat = connection.getChatManager().createChat(to, this);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; chat.sendMessage(message);<br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; public void displayBuddyList() {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Roster roster = connection.getRoster();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; roster.setSubscriptionMode(Roster.SubscriptionMode.accept_all);<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Collection&lt;RosterEntry&gt; entries = roster.getEntries();<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println("\n\n" + entries.size() + " buddy(ies):");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for (RosterEntry r : entries) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println(r.getUser());<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; public void disconnect() {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; connection.disconnect();<br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; public void processMessage(Chat chat, Message message) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (message.getType() == Message.Type.chat)<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println(chat.getParticipant() + " says: "<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; + message.getBody());<br />&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; public static void main(String args[]) throws XMPPException, IOException {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // declare variables<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ChatClient c = new ChatClient();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; BufferedReader br = new BufferedReader(new InputStreamReader(System.in));<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; String msg;<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // turn on the enhanced debugger<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; XMPPConnection.DEBUG_ENABLED = false;<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // provide your login information here<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; c.login("SendAccount", "SendPassword");<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; c.displayBuddyList();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println("-----");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println("Enter your message in the console.");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println("All messages will be sent to abhijeet.maharana");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.out.println("-----\n");<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; while (!(msg = br.readLine()).equals("bye")) {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // your buddy's gmail address goes here<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; c.sendMessage(msg, "XXXXX@gmail.com");<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; c.disconnect();<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.exit(0);<br />&nbsp;&nbsp;&nbsp; }<br />}<br /></code></p>]]>
        
    </content>
</entry>

<entry>
    <title>Run Shell Script from IE</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/06/run-shell-scrip.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.292</id>

    <published>2009-06-19T08:34:40Z</published>
    <updated>2009-06-19T09:06:50Z</updated>

    <summary>Just renmae your EXE file to MP3 or MPG. Then, use command console to run MP3 file. It still run...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>Just renmae your EXE file to MP3 or MPG. Then, use command console to run MP3 file.<br />
It still run as EXE file. See javascript code below.</p>

<p>&lt;script language=javascript&gt;<br />
  var wsh = new ActiveXObject("WScript.Shell");  <br />
  wsh.run("cmd /c D:\pietty0327.MP3");<br />
&lt;/script&gt;</p>]]>
        
    </content>
</entry>

<entry>
    <title>把Google當代理Proxy</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/06/googleproxy.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.291</id>

    <published>2009-06-15T08:51:59Z</published>
    <updated>2009-06-15T09:11:50Z</updated>

    <summary>出處：GAppProxy：架設上Google主機的Proxy 這應該是對岸同胞使用GAE來架設一個Proxy server。 詳見：GAppProxy。...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>出處：<a href="http://blog.yam.com/yenway/article/21680626">GAppProxy：架設上Google主機的Proxy</a><br />
這應該是對岸同胞使用GAE來架設一個Proxy server。<br />
詳見：<a href="http://code.google.com/p/gappproxy/">GAppProxy</a>。</p>]]>
        
    </content>
</entry>

<entry>
    <title>選擇權定價模型</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/06/post-5.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.290</id>

    <published>2009-06-15T01:42:30Z</published>
    <updated>2009-06-15T08:11:54Z</updated>

    <summary>最近讀了一些選擇權的書籍，其中以Black and Scholes Option Model最為廣泛使用，雖然之後也有其他定價模型發表，但是還是以這B-S model較為準確(Matlab還有提供一些其他的定價模型，需時間確認是否比B-S更好)。 至於為何要瞭解定價模型，第一，當然是評估選擇權策略，透過數值分析，可充分掌握未來風險及獲利。第二，透過這定價模型，可以與現貨價格比對，瞭解其偏差，預測後市變化，藉此調整選擇權策略。 至於如何來分析定價模型，Option Trading Tips可下載到Black and Scholes Excel檔。只要結合支援DDE的看盤軟體，如日盛HTS，大昌HTS等等。 此外，波動率是Black and Scholes模型中重要的因素，而波動率指數(VIX)是可以參考的指標。而其VIX的Excel公式，則參考可Option Pricing Models and Volatility...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>最近讀了一些選擇權的書籍，其中以<a href="http://en.wikipedia.org/wiki/Black-Scholes">Black and Scholes Option Model</a>最為廣泛使用，雖然之後也有其他定價模型發表，但是還是以這B-S model較為準確(<a href="http://www.mathworks.com/access/helpdesk/help/toolbox/finderiv/index.html?/access/helpdesk/help/toolbox/finderiv/f0-23501.html&http://www.mathworks.com/cgi-bin/texis/webinator/search/?db=MSS&prox=page&rorder=750&rprox=750&rdfreq=500&rwfreq=500&rlead=250&sufs=0&order=r&is_summary_on=1&ResultCount=10&query=Option-Pricing+Model&submitButtonName=Search">Matlab</a>還有提供一些其他的定價模型，需時間確認是否比B-S更好)。<br />
至於為何要瞭解定價模型，第一，當然是評估選擇權策略，透過數值分析，可充分掌握未來風險及獲利。第二，透過這定價模型，可以與現貨價格比對，瞭解其偏差，預測後市變化，藉此調整選擇權策略。<br />
至於如何來分析定價模型，<a href="http://www.optiontradingtips.com/pricing/black-and-scholes.html">Option Trading Tips</a>可下載到Black and Scholes Excel檔。只要結合支援<a href="http://office.microsoft.com/zh-tw/excel/HP030662101028.aspx">DDE</a>的看盤軟體，如日盛HTS，大昌HTS等等。<br />
此外，波動率是Black and Scholes模型中重要的因素，而<a href="http://www.taifex.com.tw/chinese/9/9_0123-1.htm">波動率指數(VIX)</a>是可以參考的指標。而其VIX的Excel公式，則參考可<a href="http://books.google.com/books?id=tOethW9fYtwC&pg=PA345&sig=eZhpD7JV9IxXdZGkOlu89z7KY0M">Option Pricing Models and Volatility Using Excel-VBA</a>一書，有現成的公式可使用。這VIX指數對於未來市場波動是很好的參考依據。</p>]]>
        
    </content>
</entry>

<entry>
    <title>Matlab Builder JA &amp; Tomcat</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/06/matlab-builder-1.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.289</id>

    <published>2009-06-08T05:55:16Z</published>
    <updated>2009-06-08T06:16:16Z</updated>

    <summary>If you want deploy Matlab java app to Tomcat. Follow the steps below: 1. Install JAVA Runtime Environment. 2. Install...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>If you want deploy Matlab java app to Tomcat.<br />
Follow the steps below:<br />
1. Install JAVA Runtime Environment.<br />
2. Install Matlab MCR.<br />
3. Install Tomcat app server.</p>

<p>When the error message is "java.lang.UnsatisfiedLinkError: Failed to find the library mclmcrrt710.dll, required by MATLAB Builder JA, on java.library.path". Adding path setting below in Tomcat config file.<br />
-Djava.library.path = %Matlab_MCR_DIR%\MATLAB Compiler Runtime\v710\runtime\win64</p>]]>
        
    </content>
</entry>

<entry>
    <title>File Upload of Java Web Service Example</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/05/file-upload-of.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.287</id>

    <published>2009-05-30T02:03:30Z</published>
    <updated>2009-05-30T02:16:23Z</updated>

    <summary>I forgot where this code appears from? Server side: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import javax.activation.DataHandler; public...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>I forgot where this code appears from?</p>

<p>Server side:<br />
<blockquote>import java.io.File;<br />
import java.io.FileOutputStream;<br />
import java.io.IOException;<br />
import java.io.InputStream;</p>

<p>import javax.activation.DataHandler;</p>

<p>public class ImageService {<br />
	public void uploadImage(String productId, DataHandler image) {<br />
		System.out.println(image.getContentType());<br />
		try {<br />
			InputStream in = image.getInputStream();<br />
			String imageDir = "c:/tmp";<br />
			FileOutputStream out = new FileOutputStream(new File(imageDir,<br />
					productId));<br />
			try {<br />
				byte buf[] = new byte[1024];<br />
				for (;;) {<br />
					int noBytesRead = in.read(buf);<br />
					out.write(buf, 0, noBytesRead);<br />
					if (noBytesRead < buf.length) {<br />
						break;<br />
					}<br />
				}<br />
			} finally {<br />
				out.close();<br />
			}<br />
		} catch (IOException e) {<br />
			throw new RuntimeException(e);<br />
		}<br />
	}<br />
}</blockquote></p>

<p>Client side:<br />
<blockquote>import java.io.ByteArrayOutputStream;<br />
import java.io.IOException;</p>

<p>import javax.activation.DataHandler;<br />
import javax.activation.DataSource;<br />
import javax.activation.FileDataSource;</p>

<p>public class ImageServiceClient {</p>

<p>	/**<br />
	 * @param args<br />
	 */<br />
	public static void main(String[] args) {<br />
		ImageServiceService service = new ImageServiceService();<br />
		/*service._getServiceClient().getOptions().setProperty(<br />
		Constants.Configuration.ENABLE_MTOM, "true");*/<br />
		ImageServiceDelegate delegate = service.getImageServicePort(); <br />
		DataSource source = new FileDataSource("c:/90325-232111.jpg");<br />
		DataHandler handler = new DataHandler(source);<br />
		ByteArrayOutputStream buffOS= new ByteArrayOutputStream();<br />
		try {<br />
			handler.writeTo(buffOS);<br />
		} catch (IOException e) {<br />
			// TODO Auto-generated catch block<br />
			e.printStackTrace();<br />
		}<br />
		byte[] buff = buffOS.toByteArray();<br />
		delegate.uploadImage("p01.jpg", buff);<br />
		System.out.println("Done!");<br />
	}</p>

<p>}</blockquote></p>]]>
        
    </content>
</entry>

<entry>
    <title>Ext Js &amp; RESTful file upload</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/05/ext-js-restful.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.288</id>

    <published>2009-05-30T01:23:53Z</published>
    <updated>2009-05-30T03:20:09Z</updated>

    <summary>The buweb site must be changed into a Web 2.0 style website. So, I found out the RESTful file upload...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>The <a href="http://buweb.everfine.com.tw/">buweb</a> site must be changed into a Web 2.0 style website. So, I found out the RESTful file upload example, <a href="http://technopaper.blogspot.com/2009/03/multiple-file-upload-using-restful-web.html">Multiple file upload using RESTful web service (Jersey) </a>, and used <a href="http://extjs.com/deploy/dev/examples/form/file-upload.html">EXt Js file upload</a> to build my client upload page.</p>

<p>But must care some details, like "<a href="http://extjs.net/forum/showthread.php?t=32053">missing } in XML expression</a>" on FireFox. If server side use "Content-type:text/plain", the respone JSON will add &lt;pre&gt;&lt;pre&gt; tags on FireFox, so change to "text/html".</p>

<p>Second, the Ext Js file upload example doesn't have submit failure responses, like client invalid, server invalid, connect failure and load failure. The <a href="http://extjs.com/forum/showthread.php?t=65572">formsubmit-example</a> has complete example code.</p>

<p>Then, usually need to do field validation, use vtype to check file extension format. Ex: <a href="http://www.myext.cn/Article/997.html">ExtJS中表单验证使用自定义vtype示例</a>.<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>Cpanel Fullbackup script</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/05/cpanel-fullback.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.286</id>

    <published>2009-05-26T16:22:52Z</published>
    <updated>2009-05-26T16:27:49Z</updated>

    <summary>From: TotalChoice Hosting General Support You can cron a job and run the below script. 30 3 * * *...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>From:  <a href="http://www.totalchoicehosting.com/forums/index.php?showtopic=7787">TotalChoice Hosting General Support</a></p>

<p>You can cron a job and run the below script.</p>

<p>30 3 * * * /usr/local/bin/php /home/youraccount/fullbackup.php</p>

<blockquote><?php

<p>// PHP script to allow periodic cPanel backups automatically.<br />
// Based on script posted by max.hedroom in cpanel.net forums<br />
//   This script contains passwords.  KEEP ACCESS TO THIS FILE SECURE!</p>

<p>// ********* THE FOLLOWING ITEMS NEED TO BE CONFIGURED *********</p>

<p>// Info required for cPanel access<br />
$cpuser = "username"; // Username used to login to CPanel<br />
$cppass = "password"; // Password used to login to CPanel<br />
$domain = "example.com"; // Domain name where CPanel is run<br />
$skin = "monsoon"; // Set to cPanel skin you use (script won't work if it doesn't match)</p>

<p>// Info required for FTP host<br />
$ftpuser = "ftpusername"; // Username for FTP account<br />
$ftppass = "ftppassword"; // Password for FTP account<br />
$ftphost = "ftp.example.com"; // Full hostname or IP address for FTP host<br />
$ftpmode = "ftp"; // FTP mode ("ftp" for active, "passiveftp" for passive)</p>

<p>// Notification information<br />
$notifyemail = "you@example.com"; // Email address to send results</p>

<p>// Secure or non-secure mode<br />
$secure = 0; // Set to 1 for SSL (requires SSL support), otherwise will use standard HTTP</p>

<p>// Set to 1 to have web page result appear in your cron log<br />
$debug = 0;</p>

<p>// *********** NO CONFIGURATION ITEMS BELOW THIS LINE *********</p>

<p>if ($secure) {<br />
   $url = "ssl://".$domain;<br />
   $port = 2083;<br />
} else {<br />
   $url = $domain;<br />
   $port = 2082;<br />
}</p>

<p>$socket = fsockopen($url,$port);<br />
if (!$socket) { echo "Failed to open socket connection... Bailing out!\n"; exit; }</p>

<p>// Encode authentication string<br />
$authstr = $cpuser.":".$cppass;<br />
$pass = base64_encode($authstr);</p>

<p>$params = "dest=$ftpmode&email=$notifyemail&server=$ftphost&user=$ftpuser&pass=$ftppass&submit=Generate Backup";</p>

<p>// Make POST to cPanel<br />
fputs($socket,"POST /frontend/".$skin."/backup/dofullbackup.html?".$params." HTTP/1.0\r\n");<br />
fputs($socket,"Host: $domain\r\n");<br />
fputs($socket,"Authorization: Basic $pass\r\n");<br />
fputs($socket,"Connection: Close\r\n");<br />
fputs($socket,"\r\n");</p>

<p>// Grab response even if we don't do anything with it.<br />
while (!feof($socket)) {<br />
  $response = fgets($socket,4096);<br />
  if ($debug) echo $response;<br />
}</p>

<p>fclose($socket);</p>

<p>?></blockquote></p>]]>
        
    </content>
</entry>

<entry>
    <title>Expand VMware Virtual Disk</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/05/expand-vmware-v.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.285</id>

    <published>2009-05-14T12:34:00Z</published>
    <updated>2009-06-02T12:21:15Z</updated>

    <summary>First, check your vmdk type. If the disk was splited in 2GB files, suggest convert to a single virtual disk....</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>First, check your vmdk type. If the disk was splited in 2GB files, suggest convert to a single virtual disk. Ex: vmware-vdiskmanager -r sourceDisk.vmdk -t 0 destinationDisk.vmdk<br />
Step 1, Expand Virtual Disk. Ex: vmware-vdiskmanager -x 6GB myDisk.vmdk<br />
Step 2, Boot up Guest OS, WinXP, use <a href="http://www.mydigitallife.info/2007/09/26/using-diskpartexe-as-disk-management-alternative-in-windows-vista-2000-2003-and-xp/">Diskpart</a> to merge two partitions. If this disk is system disk, you need copy vmdk to the other. Then mount the other vmdk file and merge its' partitions.</p>]]>
        
    </content>
</entry>

<entry>
    <title>How to Change Mac Address on WM6</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/05/how-to-change-m.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.284</id>

    <published>2009-05-14T06:46:27Z</published>
    <updated>2009-05-14T07:13:25Z</updated>

    <summary> By PHM Registry Editor. Find out [HKEY_LOCAL_MACHINE\Comm\&quot;YOUR WLAN DEVICE&quot;\Parms], there have &quot;NetworkAddress&quot; string, just modify it, if not need...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="regedit_ss.gif" src="http://server.everfine.com.tw/blog/regedit_ss.gif" width="242" height="321" class="mt-image-right" style="float: right; margin: 0 0 20px 20px;" /></span><br />
By <a href="http://www.phm.lu/Products/PocketPC/RegEdit/">PHM Registry Editor</a>.<br />
Find out [HKEY_LOCAL_MACHINE\Comm\"YOUR WLAN DEVICE"\Parms], there have "NetworkAddress" string, just modify it, if not need to add "NetworkAddress" string and type you want the Mac Address.</p>]]>
        
    </content>
</entry>

<entry>
    <title>PHP and Ext Js with JSON</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/05/php-and-ext-js.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.283</id>

    <published>2009-05-08T15:17:16Z</published>
    <updated>2009-05-10T07:54:21Z</updated>

    <summary>之前的PHP如何讀取Excel檔，提供一個Excel檔只要按下資料更新，但是如果沒有安裝Excel軟體的電腦，就沒法分析這些權証的投資價值，例如：排序等等功能。 所以想利用Ext Js的Grid來顯示，便可達成在Browser上直接排序的需求。而成果如下： Ext Js版的最新權証列表 在這實作的步驟為： 1.擷取要顯示的資料，並將資料轉成JSON。可參考Tutorial:Creating JSON Data in PHP。必須要特別注意的是，json_encode($array)，如果＄array的Key不是連貫的，那轉出來的JSON資料會有其KEY，{KEY,{$array[0]...$array[n]}}，而不是所需的格式，{$array[0]...$array[n]}，這點需要特別小心。 2.撰寫網頁及JavaScript，使用Ext Js的Library，可參考JSON Grid Example。 3.由於每次點那PHP網頁，都要重新抓取檔案分析內容，所以視資料更新情況而定，其實可以透過排程，只要執行一次將結果轉出成靜態的HTML檔案，既可節省Server負擔，還可以縮短使用者等待時間。 更進階的方法，將資料分頁，可參考ExtJS tutorial part III:...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>之前的<a href="http://server.everfine.com.tw/blog/archives/2008/06/phpaeeexcel-1.html">PHP如何讀取Excel檔</a>，提供一個<a href="http://server.everfine.com.tw/blog/archives/%E6%AC%8A%E8%AD%89%E5%83%B9%E5%80%BC.xls">Excel檔</a>只要按下資料更新，但是如果沒有安裝Excel軟體的電腦，就沒法分析這些權証的投資價值，例如：排序等等功能。<br />
所以想利用<a href="http://server.everfine.com.tw/blog/archives/2008/08/aptana-ext-js.html">Ext Js</a>的Grid來顯示，便可達成在Browser上直接排序的需求。而成果如下：<br />
<a href="http://linux.everfine.com.tw/Webbot/griddb.html">Ext Js版的最新權証列表</a><br />
在這實作的步驟為：<br />
1.擷取要顯示的資料，並將資料轉成JSON。可參考<a href="http://extjs.com/learn/Tutorial:Creating_JSON_Data_in_PHP">Tutorial:Creating JSON Data in PHP</a>。必須要特別注意的是，json_encode($array)，如果＄array的Key不是連貫的，那轉出來的JSON資料會有其KEY，{KEY,{$array[0]...$array[n]}}，而不是所需的格式，{$array[0]...$array[n]}，這點需要特別小心。<br />
2.撰寫網頁及JavaScript，使用Ext Js的Library，可參考<a href="http://extjs.org.cn/extjs/examples/grid/json-grid.html">JSON Grid Example</a>。<br />
3.由於每次點那PHP網頁，都要重新抓取檔案分析內容，所以視資料更新情況而定，其實可以透過排程，只要執行一次將結果轉出成靜態的HTML檔案，既可節省Server負擔，還可以縮短使用者等待時間。<br />
更進階的方法，將資料分頁，可參考<a href="http://tuturtinular.com/2008/08/25/extjs-tutorial-part-iii-paging-grid-with-php-and-mysql/">ExtJS tutorial part III: Paging Grid with PHP and MySql</a>。</p>

<p>延伸閱讀：<br />
<a href="http://extjs.com/learn/Tutorial:Ext20_Grid_Editor_PHP_MySQL">Tutorial:Ext20 Grid Editor PHP MySQL</a><br />
<a href="http://extjs.com/learn/Tutorial:%E5%A6%82%E4%BD%95%E5%BB%BA%E7%AB%8B%E4%B8%80%E5%80%8B%E5%8F%AF%E4%BB%A5Disable/Editable%E7%9A%84Editor_gird">Tutorial:如何建立一個可以Disable/Editable的Editor gird</a><br />
<a href="http://examples.extjs.eu/?ex=databind">Complex Data Binding by Saki</a></p>]]>
        
    </content>
</entry>

<entry>
    <title>Play Divx Movie on PS3 Tutorial</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/04/play-divx-movie.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.282</id>

    <published>2009-04-18T02:57:44Z</published>
    <updated>2009-04-18T13:57:11Z</updated>

    <summary>PS3播放Divx如何加上字幕： 參考關於PS3播放AVI檔加字幕。 使用AVIAddXSub，將原本的divx和字幕放在一起，檔名相同，設定好Configuration1，指定好Character Set、Language Code及Subtitle Bitmap畫面大小，選個喜歡的字型和大小。即可產生合併字幕檔的divx檔案，請記得將divx改為avi，以免PS3無法辨識。 各式影音格式轉換成PS3格式的方法。 PS3 H.264 Conversion Guide MP4(Divx/Xvid)使用手冊： MP4 Usage Guide 如何將MKV檔案轉換成Divx： PS3/Xbox 360 compatible H.264...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>PS3播放Divx如何加上字幕：<br />
參考<a href="http://www.mobile01.com/topicdetail.php?f=281&t=565220&p=3">關於PS3播放AVI檔加字幕</a>。<br />
使用<a href="http://www.calcitapp.com/AVIAddXSubs.php">AVIAddXSub</a>，將原本的divx和字幕放在一起，檔名相同，設定好Configuration1，指定好Character Set、Language Code及Subtitle Bitmap畫面大小，選個喜歡的字型和大小。即可產生合併字幕檔的divx檔案，請記得將divx改為avi，以免PS3無法辨識。<br />
各式影音格式轉換成PS3格式的方法。<br />
<a href="http://www.digital-digest.com/articles/PS3_H.264_Conversion_Guide_page1.html">PS3 H.264 Conversion Guide</a><br />
MP4(Divx/Xvid)使用手冊：<br />
<a href="http://www.digital-digest.com/articles/MP4_Usage_Guide_page1.html">MP4 Usage Guide</a><br />
如何將MKV檔案轉換成Divx：<br />
<a href="http://www.digital-digest.com/articles/DivX_Converter_H264_PS3_Xbox_360_Guide_page1.html">PS3/Xbox 360 compatible H.264 Encoding Guide</a><br />
建議直接安裝<a href="http://alltoavi.sourceforge.net/">alltoavi</a>來轉換。<br />
建議使用下列設定值：<br />
PS3 Video 9 (default)<br />
AVC 480p 1024kbps Stereo/128kbps<br />
AVC 720p 3072kbps Stereo/160kbps<br />
AVC 1024p 4096kbps Stereo 160kbps</p>]]>
        
    </content>
</entry>

<entry>
    <title>chm 文件無法觀看</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/04/chm.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.281</id>

    <published>2009-04-12T01:59:41Z</published>
    <updated>2009-04-12T02:04:22Z</updated>

    <summary> chm 文件開啟後無法觀看 原因是IE7 安全性設定的問題。 只要將chm檔案點滑鼠右鍵，選[內容]，再按下 [解除封鎖] 按鈕，就可正常觀看。...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p><br />
chm 文件開啟後無法觀看<br />
原因是<a href="http://geekswithblogs.net/evjen/archive/2006/06/29/83567.aspx">IE7 安全性設定的問題</a>。</p>

<p>只要將chm檔案點滑鼠右鍵，選[內容]，再按下 [解除封鎖]  按鈕，就可正常觀看。<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>Free Eclipse tutorial</title>
    <link rel="alternate" type="text/html" href="http://server.everfine.com.tw/blog/archives/2009/04/free-eclipse-tu.html" />
    <id>tag:server.everfine.com.tw,2009:/blog//1.280</id>

    <published>2009-04-11T15:23:45Z</published>
    <updated>2009-04-11T15:42:45Z</updated>

    <summary>From: University of Manitoba Computer Science, Scribd. Eclipse tutorial, part 01: Installing Eclipse Eclipse tutorial, part 02: Basic SWT Widgets...</summary>
    <author>
        <name>philipz</name>
        <uri>http://server.everfine.com.tw/blog/</uri>
    </author>
    
    
    <content type="html" xml:lang="en" xml:base="http://server.everfine.com.tw/blog/">
        <![CDATA[<p>From: <a href="http://www.cs.umanitoba.ca/~eclipse/">University of Manitoba Computer Science</a>, <a href="http://www.scribd.com/">Scribd</a>.</p>

<p><a href="http://www.scribd.com/doc/18122/Eclipse-tutorial-part-01-Installing-Eclipse">Eclipse tutorial, part 01: Installing Eclipse</a><br />
<a href="http://www.scribd.com/doc/18126/Eclipse-tutorial-part-02-Basic-SWT-Widgets">Eclipse tutorial, part 02: Basic SWT Widgets</a><br />
<a href="http://www.scribd.com/doc/18127/Eclipse-tutorial-part-03-Advanced-SWT-Widgets">Eclipse tutorial, part 03: Advanced SWT Widgets</a><br />
<a href="http://www.scribd.com/doc/18128/Eclipse-tutorial-part-04-Eclipse-Layouts">Eclipse tutorial, part 04: Eclipse Layouts</a><br />
<a href="http://www.scribd.com/doc/18129/Eclipse-tutorial-part-05-Client-Billing-Application">Eclipse tutorial, part 05: Client Billing Application</a><br />
<a href="http://www.cs.umanitoba.ca/~eclipse/6-Compiling.pdf">Compiling Eclipse applications for Windows with GCJ/MinGW</a><br />
<a href="http://www.scribd.com/doc/18131/Eclipse-tutorial-part-07-Eclipse-Project-CDT-CC-Plugin-Tutorial">Eclipse tutorial, part 07: Eclipse Project CDT (C/C++) Plugin Tutorial</a><br />
<a href="http://www.scribd.com/doc/18132/Eclipse-tutorial-part-08-Using-The-Java-Native-Interface">Eclipse tutorial, part 08: Using The Java Native Interface</a><br />
<a href="http://www.scribd.com/doc/18133/Eclipse-tutorial-part-09-Eclipse-Custom-Controls">Eclipse tutorial, part 09: Eclipse Custom Controls</a><br />
<a href="http://www.scribd.com/doc/18134/Eclipse-tutorial-part-10-Using-JUnit-in-Eclipse">Eclipse tutorial, part 10: Using JUnit in Eclipse</a><br />
<a href="http://www.cs.umanitoba.ca/~eclipse/11-JFace.pdf">JFace</a><br />
<a href="http://www.scribd.com/doc/18156/Eclipse-tutorial-part-12-An-Eclipse-GUI-Builder">Eclipse tutorial, part 12: An Eclipse GUI Builder</a><br />
<a href="http://www.scribd.com/doc/18137/Eclipse-tutorial-part-13-Refactoring-in-Eclipse">Eclipse tutorial, part 13: Refactoring in Eclipse</a><br />
<a href="http://www.scribd.com/doc/18138/Eclipse-tutorial-part-14-Design-Patterns-and-CodePro">Eclipse tutorial, part 14: Design Patterns and CodePro</a><br />
<a href="http://www.scribd.com/doc/18155/Eclipse-tutorial-part-15-Time-Tracker-Application">Eclipse tutorial, part 15: Time Tracker Application</a><br />
<a href="http://www.cs.umanitoba.ca/~eclipse/99-Prolog.pdf">Installing the Amzi Prolog Plugin</a></p>]]>
        
    </content>
</entry>

</feed>
