Erro com ThinWire

Olá pessoal,
Eu estava tentando fazer funcionar o helloworld com thinwire mas está dando este erro:

java.lang.IllegalArgumentException: InputStream cannot be null
	javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
	thinwire.util.XOD.processFile(XOD.java:372)
	thinwire.util.XOD.execute(XOD.java:355)
	thinwire.render.web.WebApplication.<init>(WebApplication.java:396)
	thinwire.render.web.WebServlet.handleStart(WebServlet.java:189)
	thinwire.render.web.WebServlet.service(WebServlet.java:95)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

Alguém saberia me dizer o que preciso fazer?
Detalhes do que tenho no classpath:

jdk 1.5 commons-fileupload-1.0.jar thinwire.jar
o web.xml:

	<servlet>
		<servlet-name>hello</servlet-name>
		<servlet-class>thinwire.render.web.WebServlet</servlet-class>
		<init-param>
			<param-name>mainClass</param-name>
			<param-value>pacote.hello.Main</param-value>
		</init-param>
		<init-param>
			<param-name>styleSheet</param-name>
			<param-value>DefaultStyle</param-value>
		</init-param>
	</servlet>
	<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/hello</url-pattern>
	</servlet-mapping>
</web-app>

a classe:

package pacote.hello;

import thinwire.ui.Application;
import thinwire.ui.Dialog;
import thinwire.ui.Label;

public class Main {

	public static void main(String[] args) {
		
		Application.current().getFrame().setTitle("Olá Mundo!");
		
		Dialog dialog = new Dialog();
		dialog.setTitle("Janela");
		dialog.setBounds(100, 100, 400, 200);

		Label label = new Label();
		label.setText("Olá Mundo!");
		label.setSize( 150, 50 );
		
		dialog.getChildren().add(label);
		dialog.setVisible(true);
		
		
	}

}

Iae pessoal, ninguém sabe?

Se não me engano você tem que mapear usando /*

<servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping>

Editar:

“Devido a um bug ainda não resolvido na
versão utilizada desse tutorial (a 1.2rc1), é necessário que sempre haja uma aplicação mapeada para a
URL ?/?, então, se você vai colocar várias aplicações do Thinwire em uma única aplicação web, lembrese
sempre de adicionar uma delas mapeada para o contexto raiz em ?/
?, as outras aplicações podem ter
as suas URLs normalmente (o mapeamento genérico não vai afetar o seu funcionamento). Você também
pode simplesmente mapear o mesmo servlet para dois caminhos de URL distintos.”

Retirado do tutorial de Thinwire do próprio GUJ.

Pois é, tem que ter pelo menos um servlet do Thinwire mapeado pra “/*”.

Esqueci de comentar o nome do autor XD já tinha fechado o tutorial(chequei pra ver se não falava besteira hehe :p) imagino que seja o próprio usuário acima.

Seguinte pessoal, baixei o tutorial aqui do guj (acho que é o mesmo em questão), e nesse tutorial e exemplo que ele mostra utiliza o mapeamento “/" de que vocês tanto falam, mas continua dando o mesmo problema. E o que é mais estranho ainda, é que se eu fazer o deploy do helloworld que vem junto com o SDK, funciona que é uma beleza, mas no web.xml de lá não existe o mapeamento "/” para a classe principal.
E ai? Alguém sabe o por que dessa ocorrência bizarra??

[]'s.

Galera, seguinte…
Consegui colocar o exemplo do GUJ para funcionar. O que eu fiz de adicional copiar o conteúdo da pasta DefaultStyle de algum projeto de exemplo que veio no SDK (helloworld, para ser mais específico) para dentro da mesma pasta no meu projeto. Ainda não sei o porque e também nem olhei o que o xml que tem dentro da pasta está mapeando, mas com certeza é algo importante para funcionar normal…

[]'s.

No tutorial do GUJ fala pra fazer isso mesmo. Dei uma olhada aqui pra conferir.

Obrigado pela ajuda pessoal, consegui…