private void placeComponents()
  {
    serverOutput = new OutputArea("Server output:");
    transactionPane = new JTabbedPane();
    JTable resourceTable = new JTable(resourceTableModel);
    resourceTable.setCellSelectionEnabled(false);
    resourceTable.setColumnSelectionAllowed(false);
    resourceTable.setRowSelectionAllowed(false);
    serverList.setCellRenderer(new DefaultListCellRenderer()
    {
      public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus)
      {
        return super.getListCellRendererComponent(list, value, index, false, false);
      }
    });

    JPanel counterPanel = new JPanel(new GridLayout(2, 1));
    counterPanel.add(nofAbortsLabel);
    counterPanel.add(nofCommitsLabel);
    JPanel labelPanel = new JPanel(new GridLayout(1, 2));
    labelPanel.add(new JLabel("Most recent transactions:"));
    labelPanel.add(counterPanel);
    JPanel topPanel = new JPanel(new BorderLayout());
    pauseButton = new JButton("Start");
    pauseButton.addActionListener(this);
    topPanel.add(labelPanel, BorderLayout.CENTER);
    topPanel.add(pauseButton, BorderLayout.EAST);
    JPanel upperPanel = new JPanel(new BorderLayout());
    upperPanel.add(topPanel, BorderLayout.NORTH);
    upperPanel.add(transactionPane, BorderLayout.CENTER);
    JPanel serverPanel = new JPanel(new BorderLayout());
    JPanel resPanel = new JPanel(new BorderLayout());
    JPanel serversPanel = new JPanel(new BorderLayout());
    resPanel.add(new JLabel("Server resources:"), BorderLayout.NORTH);
    JScrollPane tableScrollPane = new JScrollPane(resourceTable);
    resourceTable.setPreferredScrollableViewportSize(new Dimension(150, 160));
    resPanel.add(tableScrollPane, BorderLayout.CENTER);
    serversPanel.add(new JLabel("Online servers:"), BorderLayout.NORTH);
    JScrollPane serverScrollPane = new JScrollPane(serverList);
    serversPanel.add(serverScrollPane, BorderLayout.CENTER);
    serverPanel.add(resPanel, BorderLayout.WEST);
    serverPanel.add(serverOutput, BorderLayout.CENTER);
    serverPanel.add(serversPanel, BorderLayout.EAST);

    Container cp = getContentPane();
    cp.setLayout(new BorderLayout());
    cp.add(upperPanel, BorderLayout.CENTER);
    cp.add(serverPanel, BorderLayout.SOUTH);
  }