Program: 167276
Project: 167276
Buggy source:
@SuppressWarnings("String_Node_Str") @Override protected void init(VaadinRequest request){
  HttpServletRequest req=((VaadinServletRequest)VaadinService.getCurrentRequest()).getHttpServletRequest();
  appSession=new AppSession(req.getRemoteUser(),whereAreYou(req),req.getRemoteHost(),VaadinSession.getCurrent(),req.getHeader("String_Node_Str"),new Date());
  WebApplicationContext ctx=getWebApplicationContext();
  backgroundRefresherService=ctx.getBean(BackgroundRefresherService.class);
  backgroundRefresherService.init(this);
  setErrorHandler(new DefaultErrorHandler(){
    public void error(    com.vaadin.server.ErrorEvent event){
      String intro="String_Node_Str";
      String message="String_Node_Str";
      for (Throwable t=event.getThrowable(); t != null; t=t.getCause()) {
        if (t.getCause() == null) {
          intro+=t.getClass().getName() + "String_Node_Str";
          message=t.getMessage();
        }
      }
      ErrorWindow window=new ErrorWindow(intro,message);
      window.show();
      Throwable ex=event.getThrowable();
      if (ex != null) {
        log.error(ex.getMessage(),ex);
      }
 else {
        log.error("String_Node_Str");
      }
    }
  }
);
  VaadinSession.getCurrent().setConverterFactory(new DefaultConverterFactory(){
    private static final long serialVersionUID=1L;
    @Override protected Converter<Date,?> createDateConverter(    Class<?> sourceType){
      return super.createDateConverter(sourceType);
    }
    protected Converter<String,?> createStringConverter(    Class<?> sourceType){
      if (Double.class.isAssignableFrom(sourceType)) {
        return new StringToDoubleConverter();
      }
 else       if (Float.class.isAssignableFrom(sourceType)) {
        return new StringToFloatConverter();
      }
 else       if (Integer.class.isAssignableFrom(sourceType)) {
        return new StringToIntegerConverter(){
          private static final long serialVersionUID=1L;
          @Override protected NumberFormat getFormat(          Locale locale){
            NumberFormat format=super.getFormat(locale);
            format.setGroupingUsed(false);
            return format;
          }
        }
;
      }
 else       if (Long.class.isAssignableFrom(sourceType)) {
        return new StringToLongConverter(){
          private static final long serialVersionUID=1L;
          @Override protected NumberFormat getFormat(          Locale locale){
            NumberFormat format=super.getFormat(locale);
            format.setGroupingUsed(false);
            return format;
          }
        }
;
      }
 else       if (BigDecimal.class.isAssignableFrom(sourceType)) {
        return new StringToBigDecimalConverter();
      }
 else       if (Boolean.class.isAssignableFrom(sourceType)) {
        return new StringToBooleanConverter();
      }
 else       if (Date.class.isAssignableFrom(sourceType)) {
        return new StringToDateConverter(){
          protected DateFormat getFormat(          Locale locale){
            if (locale == null) {
              locale=Locale.getDefault();
            }
            DateFormat f=new SimpleDateFormat("String_Node_Str");
            f.setLenient(false);
            return f;
          }
        }
;
      }
 else {
        return null;
      }
    }
  }
);
  Responsive.makeResponsive(this);
  ApplicationContext appCtx=ctx.getBean(ApplicationContext.class);
  IOperationsService operationsService=appCtx.getOperationsSerivce();
  if (operationsService.isUserLoginEnabled()) {
    LoginDialog login=new LoginDialog(appCtx,this);
    UI.getCurrent().addWindow(login);
  }
 else {
    User user=operationsService.findUserByLoginId(DEFAULT_USER);
    if (user == null) {
      user=new User();
      user.setLoginId(DEFAULT_USER);
      operationsService.save(user);
      Group group=operationsService.findGroupByName(DEFAULT_GROUP);
      if (group == null) {
        group=new Group(DEFAULT_GROUP);
        user.getGroups().add(group);
        operationsService.save(group);
        for (        Privilege priv : Privilege.values()) {
          GroupPrivilege groupPriv=new GroupPrivilege(group.getId(),priv.name());
          group.getGroupPrivileges().add(groupPriv);
          operationsService.save(groupPriv);
        }
      }
      UserGroup userGroup=new UserGroup(user.getId(),group.getId());
      operationsService.save(userGroup);
    }
    appCtx.setUser(user);
    login(user);
  }
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") @Override protected void init(VaadinRequest request){
  HttpServletRequest req=((VaadinServletRequest)VaadinService.getCurrentRequest()).getHttpServletRequest();
  appSession=new AppSession(req.getRemoteUser(),whereAreYou(req),req.getRemoteHost(),VaadinSession.getCurrent(),req.getHeader("String_Node_Str"),new Date());
  WebApplicationContext ctx=getWebApplicationContext();
  backgroundRefresherService=ctx.getBean(BackgroundRefresherService.class);
  backgroundRefresherService.init(this);
  setErrorHandler(new DefaultErrorHandler(){
    public void error(    com.vaadin.server.ErrorEvent event){
      String intro="String_Node_Str";
      String message="String_Node_Str";
      for (Throwable t=event.getThrowable(); t != null; t=t.getCause()) {
        if (t.getCause() == null) {
          intro+=t.getClass().getName() + "String_Node_Str";
          message=t.getMessage();
        }
      }
      ErrorWindow window=new ErrorWindow(intro,message);
      window.show();
      Throwable ex=event.getThrowable();
      if (ex != null) {
        log.error(ex.getMessage(),ex);
      }
 else {
        log.error("String_Node_Str");
      }
    }
  }
);
  VaadinSession.getCurrent().setConverterFactory(new DefaultConverterFactory(){
    private static final long serialVersionUID=1L;
    @Override protected Converter<Date,?> createDateConverter(    Class<?> sourceType){
      return super.createDateConverter(sourceType);
    }
    protected Converter<String,?> createStringConverter(    Class<?> sourceType){
      if (Double.class.isAssignableFrom(sourceType)) {
        return new StringToDoubleConverter();
      }
 else       if (Float.class.isAssignableFrom(sourceType)) {
        return new StringToFloatConverter();
      }
 else       if (Integer.class.isAssignableFrom(sourceType)) {
        return new StringToIntegerConverter(){
          private static final long serialVersionUID=1L;
          @Override protected NumberFormat getFormat(          Locale locale){
            NumberFormat format=super.getFormat(locale);
            format.setGroupingUsed(false);
            return format;
          }
        }
;
      }
 else       if (Long.class.isAssignableFrom(sourceType)) {
        return new StringToLongConverter(){
          private static final long serialVersionUID=1L;
          @Override protected NumberFormat getFormat(          Locale locale){
            NumberFormat format=super.getFormat(locale);
            format.setGroupingUsed(false);
            return format;
          }
        }
;
      }
 else       if (BigDecimal.class.isAssignableFrom(sourceType)) {
        return new StringToBigDecimalConverter();
      }
 else       if (Boolean.class.isAssignableFrom(sourceType)) {
        return new StringToBooleanConverter();
      }
 else       if (Date.class.isAssignableFrom(sourceType)) {
        return new StringToDateConverter(){
          protected DateFormat getFormat(          Locale locale){
            if (locale == null) {
              locale=Locale.getDefault();
            }
            DateFormat f=new SimpleDateFormat("String_Node_Str");
            f.setLenient(false);
            return f;
          }
        }
;
      }
 else {
        return null;
      }
    }
  }
);
  Responsive.makeResponsive(this);
  ApplicationContext appCtx=ctx.getBean(ApplicationContext.class);
  IOperationsService operationsService=appCtx.getOperationsService();
  if (operationsService.isUserLoginEnabled()) {
    LoginDialog login=new LoginDialog(appCtx,this);
    UI.getCurrent().addWindow(login);
  }
 else {
    User user=operationsService.findUserByLoginId(DEFAULT_USER);
    if (user == null) {
      user=new User();
      user.setLoginId(DEFAULT_USER);
      operationsService.save(user);
      Group group=operationsService.findGroupByName(DEFAULT_GROUP);
      if (group == null) {
        group=new Group(DEFAULT_GROUP);
        user.getGroups().add(group);
        operationsService.save(group);
        for (        Privilege priv : Privilege.values()) {
          GroupPrivilege groupPriv=new GroupPrivilege(group.getId(),priv.name());
          group.getGroupPrivileges().add(groupPriv);
          operationsService.save(groupPriv);
        }
      }
      UserGroup userGroup=new UserGroup(user.getId(),group.getId());
      operationsService.save(userGroup);
    }
    appCtx.setUser(user);
    login(user);
  }
}