Notes To Self

Install XP for physical system with vmware (stop 0x0000007B boot error)

Sometimes you want to install windows on a spare disk for some gaming without it eating your Linux partition or interrupting your other activities. If you happen to have vmware, there is a way to accomplish this.

Disclaimer: This installation is somewhat advanced as it requires you to improvise around the specifics of your system and success depends on your hardware. If you are uncertain the low tech way of unplugging your Linux drives and installing it on the remaining windows drive may be a better way to go.

Ingredients: Linux (I used Debian Etch), vmware (I used workstation 6.5), windows XP CD or iso, a spare hard disk, and a motherboard with a somewhat standard HD controller.

  1. In vmware, create a new image that uses your intended windows physical disk. In my case vmware had some trouble picking up my /dev/hda, so ln -sv hda sdc and then referring to /dev/sdc as physical disk allowed me to use it.
  2. Install XP on your physical disk.
  3. Since the virtual controller is different from your own, you’ll have to install some drivers by hand so your physical device will boot properly. (You’ll get a nasty blue screen stop 0x0000007B boot error otherwise) Visit http://support.microsoft.com/kb/314082/ and follow the instructions listed under ‘more information’ about adding to the registry and copying drivers under vmware.
  4. Add your new drive to grub menu.lst (usually located in /boot/grub/): (In this case, hd1,0 is my windows drive, make sure your drive is listed in device.map or it wont work

Title Microsoft Windows XP
map (hd0,0) (hd1,0)
map (hd1,0) (hd0,0)
rootnoverify(hd1,0)
savedefault
makeactive
chainloader +1

Thats all there is too it! After booting Windows will need to install drivers for everything, even your USB controller, so you might have to revert to a PS2 keyboard during this part.

Seam 2.1 and Icefaces 1.8 issue

Seems mixing seam jsf tags is causing some issues (for me at least).

Icefaces 1.8 SessionRenderer.render from within a @asynchronous Seam 2.1 Pojo is causing ViewExpiredException exceptions under certain conditions, failing the rerender.

12:23:43,465 FATAL [lifecycle] JSF1054: (Phase ID: RESTORE_VIEW 1, View ID: ) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@13af4e5]
12:23:43,469 ERROR [ViewRootStateManagerImpl] Missing ViewRoot in restoreState, ice.session: TOuIKvW0_UB0cjooWt11ig, viewNumber: 11

The culprit seems to be using any s:link calling an action (s:link action=”#{iconHome.done}”). Clicking it breaks any SessionRenderer on that Session in the future. Whenever you trigger the SessionRenderer, It tries to rerender the jsf view with s:link instead of the currently active view, and fails.

For now i’m working around it by using ice:commandLink instead.