<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Thoughts on coding, Java, agile development, and related technology direct from the brain of Michael Pigg. That’s Pigg Logic.</description><title>Pigg Logic</title><generator>Tumblr (3.0; @pigglogic)</generator><link>http://pigglogic.tumblr.com/</link><item><title>NetBeans Validation of XML Schema (XSD) Files</title><description>&lt;p&gt;One of the things I like about NetBeans is that things &amp;#8216;just work&amp;#8217; out of the box. The XML editor is one of those things that generally works very well. One place where this doesn&amp;#8217;t seem to apply is when you&amp;#8217;d like NetBeans to validate an XML schema file. I was working on a JAXB document and ran into this problem again. When you right-click and choose Validate XML, NetBeans complains that it can&amp;#8217;t find the definition for xs:schema. I think the problem is that the schema URL for XML Schema doesn&amp;#8217;t actually return an xsd file. Apparently NetBeans doesn&amp;#8217;t have a built-in rule to resolve this schema.&lt;/p&gt;
&lt;p&gt;Fixing the problem isn&amp;#8217;t too hard, but I don&amp;#8217;t know if it&amp;#8217;s documented anywhere. First, create an XML catalog that resolves the schema URL to the XSD file:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;lt;?xml version=&amp;#8221;1.0&amp;#8221;?&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;!DOCTYPE catalog&lt;/p&gt;
&lt;p&gt;   PUBLIC &amp;#8220;-//OASIS/DTD Entity Resolution XML Catalog V1.0//EN&amp;#8221;&lt;/p&gt;
&lt;p&gt;   &amp;#8220;http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd&amp;#8221;&amp;gt;&lt;/p&gt;

&lt;p&gt;&amp;lt;catalog xmlns=&amp;#8221;urn:oasis:names:tc:entity:xmlns:xml:catalog&amp;#8221;&amp;gt;&lt;/p&gt;
&lt;p&gt;    &amp;lt;uri&lt;/p&gt;
&lt;p&gt;        name=&amp;#8221;http://www.w3.org/2001/XMLSchema&amp;#8221;&lt;/p&gt;
&lt;p&gt;        uri=&amp;#8221;http://www.w3.org/2001/XMLSchema.xsd&amp;#8221;/&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;/catalog&amp;gt;&lt;/p&gt;

&lt;/blockquote&gt;
&lt;p&gt;Now go to Tools/DTDs and XML Schemas. click on Add Catalog, click on Browse, and then choose the file created above. This is an OASIS type catalog.&lt;/p&gt;
&lt;p&gt;Now NetBeans will be able to resolve the schema definition and happily validate XML Schema files.&lt;/p&gt;</description><link>http://pigglogic.tumblr.com/post/595179272</link><guid>http://pigglogic.tumblr.com/post/595179272</guid><pubDate>Thu, 13 May 2010 09:00:00 -0400</pubDate><category>netbeans</category><category>xml</category></item><item><title>X-CTU woes</title><description>&lt;p&gt;Up until yesterday I was successfully running Digi&amp;#8217;s X-CTU application (which is a Windows app) using Wine on an Ubuntu VM. This is not a very nice app, but it is the only official way to update firmware on XBee modules. In fact, it&amp;#8217;s the only way I know of to update the firmware on an XBee. Although I have a Windows VM that I can boot up, it always seems like a big hassle when I just want to reconfigure an XBee module. Had I realized what a hassle this was going to be I might not have chosen XBee modules.&lt;/p&gt;
&lt;p&gt;So yesterday I had two new XBee modules that I wanted to configure. These new modules had a newer version 10E6 of the firmware on them from the factory. X-CTU recognized the modules were connected but complained when it could not find a configuration file for that firmware version. I let it try to update from the Digi site, but it returned an error saying that the server was busy. That was odd. I downloaded the 10E6 firmware zip from the update site (working fine for me!) and told X-CTU to update from the file, which it was happy to do. But it still complained that it did not have the 10E6 files. I booted up the Windows VM and everything went swimmingly. The software was able to download updates from the Digi site and it had no problems with the 10E6 firmware.&lt;/p&gt;
&lt;p&gt;I think the problem is that the firmware files say that the firmware version is 10e6 rather than 10E6. On Windows, this is not a problem, but on Linux the file system does not like this difference. Of course, the software is not meant to run on Linux and Digi emphatically states that they don&amp;#8217;t support the software on anything other than Windows.&lt;/p&gt;
&lt;p&gt;Now I&amp;#8217;d like to see if running on a case-insensitive file system would fix the Wine problem.&lt;/p&gt;</description><link>http://pigglogic.tumblr.com/post/592428558</link><guid>http://pigglogic.tumblr.com/post/592428558</guid><pubDate>Wed, 12 May 2010 09:22:49 -0400</pubDate></item><item><title>Speaking at Open Source Bridge</title><description>&lt;p&gt;I&amp;#8217;ll be presenting a &lt;a target="_blank" href="http://opensourcebridge.org/sessions/323"&gt;talk&lt;/a&gt; at the &lt;a target="_blank" href="http://opensourcebridge.org/"&gt;Open Source Bridge conference&lt;/a&gt; in Portland sometime between June 1st and 4th. My talk will be about a wireless temperature sensor and control system that I built using some dusty electronics knowledge and a truckload of open source (mostly Apache stuff) Java software. The wireless aspect of the hardware is provided by XBee modules. The main things that I will be talking about on the software side are Apache Mina and Apache Felix. Mina provides a nice library for handling custom protocol that XBee modules communicate with while Felix provides a nice base platform for the application to run on.&lt;/p&gt;</description><link>http://pigglogic.tumblr.com/post/592280789</link><guid>http://pigglogic.tumblr.com/post/592280789</guid><pubDate>Wed, 12 May 2010 08:06:50 -0400</pubDate><category>opensourcebridge</category><category>java</category></item><item><title>Installing Wine via MacPorts on 10.6</title><description>&lt;p&gt;Installing Wine using MacPorts wasn&amp;#8217;t working out very well for me. I think the main problem was that I had built most of my ports under 10.5 and then upgraded to 10.6. Having a fresh need to run Wine, I decided to start over from scratch with MacPorts. I blew away my existing installation and re-installed the latest binary.&lt;/p&gt;
&lt;p&gt;On 10.6, you have to use wine-devel. So I did that. Things seemed to be going well until all the dependencies were built and wine-devel was configuring. It then announced that it couldn&amp;#8217;t use the installed dependencies because they were built only for x86_64 and it needed them for i386. So, I had to go back and build each of the dependencies with the universal variant so that both i386 and x86_64 variants would be built.&lt;/p&gt;
&lt;p&gt;Now it works, although the experience is not as nice as on Ubuntu. That&amp;#8217;s mainly because I can&amp;#8217;t double-click a shortcut to start an application.&lt;/p&gt;</description><link>http://pigglogic.tumblr.com/post/592209386</link><guid>http://pigglogic.tumblr.com/post/592209386</guid><pubDate>Wed, 12 May 2010 07:23:06 -0400</pubDate><category>wine</category><category>mac</category></item></channel></rss>
