# Catnip: HME extensions to Apache Tomcat



## s2kdave (Jan 28, 2005)

I've started a new project called Catnip that will let you create standard web applications out of your HME apps and use them in Apache Tomcat. I've done a lot of coding and have it mostly working. I started documenting it in a Google Code project. Basically you can take any HME application and make it into a web app by bundling it up and creating a web.xml.

My hope is that this will become the standard way of deploying applications. It will also make administering multiple apps much easier as you won't have to punch a firewall hole for every single app. And you can use standard web tools to manage it.

Galleon is a big monolithic bloat and Tomcat is a proven industry standard for servers. I plan to keep Catnip as small as possible. It will not provide any applications (except maybe a TiVoToComeback interface), just the integration pieces.

http://code.google.com/p/catnip/

I would like to get other developers input on the integration points so if you have any suggestions to make it easier, just speak up.

David


----------



## jbcooley (May 13, 2007)

I think that's a great idea. When I first started working on the .net sdk I tried to use IIS to host the HME apps. Unfortunately the ASP.NET classes wouldn't let me hold on to the socket. I believe that's changed with Windows Activation Service in the next server os from Microsoft. It would be great to be able to use a web hosting service rather than have to own the entire server.


----------



## wmcbrine (Aug 2, 2003)

It looks like this is only useful for Java.

I designed my HME for Python with the idea of being able to use the apps with a different server, but I haven't tried it yet. Basically, you'd add a few lines like this to turn an app into a cgi script:


```
if __name__ == '__main__':
    import sys
    print 'Content-type: application/x-hme'
    print
    app = AppClass(sys.stdin, sys.stdout)
    app.mainloop()
```
I don't have a lot of experience in this area, so I may be overlooking some things.


----------



## s2kdave (Jan 28, 2005)

wmcbrine is right, Tomcat is only for Java so for the python and .net work you guys are doing it probably won't be much use. I guess I misspoke when I said you can "take any HME application". What I meant was any HME application that uses the IFactory/IApplication interfaces that tivo provided.


----------



## jbcooley (May 13, 2007)

At least it proves that Apache can be made to work even if current versions of IIS can't.


----------



## s2kdave (Jan 28, 2005)

I've just released the first beta version of the application server. It includes a sample web application. Check it out!

http://code.google.com/p/catnip/downloads/list

David


----------

