Buggy code:
public class WebServiceSampler extends HTTPSamplerBase { private static final Logger log = LoggingManager . getLoggerForClass ( ) ; private static final String XML_DATA = "HTTPSamper.xml_data" ; private static final String SOAP_ACTION = "Soap.Action" ; private static final String XML_DATA_FILE = "WebServiceSampler.xml_data_file" ; private static final String XML_PATH_LOC = "WebServiceSampler.xml_path_loc" ; private static final String MEMORY_CACHE = "WebServiceSampler.memory_cache" ; private static final String READ_RESPONSE = "WebServiceSampler.read_response" ; private static final String USE_PROXY = "WebServiceSampler.use_proxy" ; private static final String PROXY_HOST = "WebServiceSampler.proxy_host" ; private static final String PROXY_PORT = "WebServiceSampler.proxy_port" ; private static final String WSDL_URL = "WebserviceSampler.wsdl_url" ; private static final String TIMEOUT = "WebserviceSampler.timeout" ; private static final String PROXY_USER = JMeterUtils . getPropDefault ( HTTP_PROXY_USER , "" ) ; private static final String PROXY_PASS = JMeterUtils . getPropDefault ( HTTP_PROXY_PASS , "" ) ; private static final String ENCODING = "UTF-8" ; private final Random RANDOM = new Random ( ) ; private String fileContents = null ; public void setXmlPathLoc ( String path ) { } public String getXmlPathLoc ( ) { } public void setXmlFile ( String filename ) { } public String getXmlFile ( ) { } protected String getRandomFileName ( ) { } public void setXmlData ( String data ) { } public String getXmlData ( ) { } public void setSoapAction ( String data ) { } public String getSoapAction ( ) { } public void setMemoryCache ( boolean cache ) { } public boolean getMemoryCache ( ) { } public void setReadResponse ( boolean read ) { } public boolean getReadResponse ( ) { } public void setUseProxy ( boolean proxy ) { } public boolean getUseProxy ( ) { } public void setProxyHost ( String host ) { } public String getProxyHost ( ) { } public void setProxyPort ( String port ) { } public int getProxyPort ( ) { } public void setWsdlURL ( String url ) { } public String getWsdlURL ( ) { } private void checkProxy ( ) { <START_BUG> if ( ( ( System . getProperty ( "JMeter.NonGui" ) ) != null ) && ( System . getProperty ( "JMeter.NonGui" ) . equals ( "true" ) ) ) { <END_BUG> this . setUseProxy ( true ) ; String port = this . getPropertyAsString ( WebServiceSampler . PROXY_PORT ) ; String host = this . getPropertyAsString ( WebServiceSampler . PROXY_HOST ) ; if ( ( host == null ) || ( ( host . length ( ) ) == 0 ) ) { host = System . getProperty ( "http.proxyHost" ) ; if ( host != null ) { this . setProxyHost ( host ) ; } } if ( ( port == null ) || ( ( port . length ( ) ) == 0 ) ) { port = System . getProperty ( "http.proxyPort" ) ; if ( port != null ) { this . setProxyPort ( port ) ; } } } } private Element createDocument ( ) throws IOException , SAXException { } private Document openDocument ( String file ) throws IOException , SAXException { } protected HTTPSampleResult sample ( URL u , String s , boolean b , int i ) { } public SampleResult sample ( ) { } public void addEncodedArgument ( String name , String value , String metaData ) { } public String convertSoapHeaders ( Hashtable ht ) { } public String getTimeout ( ) { } public int getTimeoutAsInt ( ) { } public void setTimeout ( String text ) { } }

Fix:
if ( JMeter . isNonGUI ( ) ) {