I solved this problem so thought I'd round off in case anyone ever has the same issue.
In the hypersonic documentation, it states that you need to create a table with the text attribute in order to make it persistant and not a memory-only table:
[CODE} create [B]text[/B] table person ( pid varchar not null primary key, name varchar, age integer ); [/CODE]
However, this seems to cause Jboss to not recognize the table. Removing the 'text' solved the problem. So either the documentation is incorrect (or I dont understand it) or Jboss does something under the covers to make the table permanent when accessing it.