Buggy code:
public class ProxyControlGui extends LogicControllerGui implements ActionListener , ItemListener , KeyListener , JMeterGUIComponent , UnsharedComponent { private static final Logger log = LoggingManager . getLoggerForClass ( ) ; private static final long serialVersionUID = 232L ; private JTextField portField ; private JCheckBox httpHeaders ; private JComboBox groupingMode ; private JCheckBox addAssertions ; private JCheckBox useKeepAlive ; private JCheckBox regexMatch ; private JComboBox samplerTypeName ; private JCheckBox samplerRedirectAutomatically ; private JCheckBox samplerFollowRedirects ; private JCheckBox samplerDownloadImages ; private JCheckBox httpsSpoof ; private JTextField httpsMatch ; private JTextField contentTypeInclude ; private JTextField contentTypeExclude ; private JComboBox targetNodes ; private DefaultComboBoxModel targetNodesModel ; private ProxyControl model ; private JTable excludeTable ; private PowerTableModel excludeModel ; private JTable includeTable ; private PowerTableModel includeModel ; private static final String CHANGE_TARGET = "change_target" ; private JButton stop ; private JButton start ; private JButton restart ; private static final String STOP = "stop" ; private static final String START = "start" ; private static final String RESTART = "restart" ; private static final String ENABLE_RESTART = "enable_restart" ; private static final String ADD_INCLUDE = "add_include" ; private static final String ADD_EXCLUDE = "add_exclude" ; private static final String DELETE_INCLUDE = "delete_include" ; private static final String DELETE_EXCLUDE = "delete_exclude" ; private static final String ADD_TO_INCLUDE_FROM_CLIPBOARD = "include_clipboard" ; private static final String ADD_TO_EXCLUDE_FROM_CLIPBOARD = "exclude_clipboard" ; private static final String INCLUDE_COL = "patterns_to_include" ; private static final String EXCLUDE_COL = "patterns_to_exclude" ; private static final String PORTFIELD = "portField" ; public ProxyControlGui ( ) { } @ Override public TestElement createTestElement ( ) { } protected ProxyControl makeProxyControl ( ) { } @ Override public void modifyTestElement ( TestElement el ) { } protected void setIncludeListInProxyControl ( ProxyControl element ) { } protected void setExcludeListInProxyControl ( ProxyControl element ) { } private List < String > getDataList ( PowerTableModel p_model , String colName ) { } @ Override public String getLabelResource ( ) { } @ Override public Collection < String > getMenuCategories ( ) { } @ Override public void configure ( TestElement element ) { } private void populateTable ( PowerTableModel p_model , PropertyIterator iter ) { } public void itemStateChanged ( ItemEvent e ) { } public void actionPerformed ( ActionEvent action ) { } protected void addFromClipboard ( JTable table ) { } private void startProxy ( ) { } private void enableRestart ( ) { } public void keyPressed ( KeyEvent e ) { } public void keyTyped ( KeyEvent e ) { } public void keyReleased ( KeyEvent e ) { } private void init ( ) { } private JPanel createControls ( ) { } private JPanel createPortPanel ( ) { } private JPanel createTestPlanContentPanel ( ) { } private JPanel createHTTPSamplerPanel ( ) { DefaultComboBoxModel m = new DefaultComboBoxModel ( ) ; for ( String s : HTTPSamplerFactory . getImplementations ( ) ) { m . addElement ( s ) ; } samplerTypeName = new JComboBox ( m ) ; <START_BUG> samplerTypeName . setSelectedIndex ( 0 ) ; <END_BUG> samplerTypeName . addItemListener ( this ) ; JLabel label2 = new JLabel ( JMeterUtils . getResString ( "proxy_sampler_type" ) ) ; label2 . setLabelFor ( samplerTypeName ) ; samplerRedirectAutomatically = new JCheckBox ( JMeterUtils . getResString ( "follow_redirects_auto" ) ) ; samplerRedirectAutomatically . setSelected ( false ) ; samplerRedirectAutomatically . addActionListener ( this ) ; samplerRedirectAutomatically . setActionCommand ( ProxyControlGui . ENABLE_RESTART ) ; samplerFollowRedirects = new JCheckBox ( JMeterUtils . getResString ( "follow_redirects" ) ) ; samplerFollowRedirects . setSelected ( true ) ; samplerFollowRedirects . addActionListener ( this ) ; samplerFollowRedirects . setActionCommand ( ProxyControlGui . ENABLE_RESTART ) ; useKeepAlive = new JCheckBox ( JMeterUtils . getResString ( "use_keepalive" ) ) ; useKeepAlive . setSelected ( true ) ; useKeepAlive . addActionListener ( this ) ; useKeepAlive . setActionCommand ( ProxyControlGui . ENABLE_RESTART ) ; samplerDownloadImages = new JCheckBox ( JMeterUtils . getResString ( "web_testing_retrieve_images" ) ) ; samplerDownloadImages . setSelected ( false ) ; samplerDownloadImages . addActionListener ( this ) ; samplerDownloadImages . setActionCommand ( ProxyControlGui . ENABLE_RESTART ) ; HorizontalPanel panel = new HorizontalPanel ( ) ; panel . setBorder ( BorderFactory . createTitledBorder ( BorderFactory . createEtchedBorder ( ) , JMeterUtils . getResString ( "proxy_sampler_settings" ) ) ) ; panel . add ( label2 ) ; panel . add ( samplerTypeName ) ; panel . add ( samplerRedirectAutomatically ) ; panel . add ( samplerFollowRedirects ) ; panel . add ( useKeepAlive ) ; panel . add ( samplerDownloadImages ) ; return panel ; } private JPanel createTargetPanel ( ) { } private JPanel createGroupingPanel ( ) { } private JPanel createContentTypePanel ( ) { } private JPanel createIncludePanel ( ) { } private JPanel createExcludePanel ( ) { } private JPanel createTableButtonPanel ( String addCommand , String deleteCommand , String copyFromClipboard ) { } private void reinitializeTargetCombo ( ) { } private void buildNodesModel ( JMeterTreeNode node , String parent_name , int level ) { } private String spaces ( int level ) { } }

Fix:
samplerTypeName . setSelectedItem ( DEFAULT_CLASSNAME ) ;