Cómo detectar 412 condiciones previas errores fallidos en la URL de Android Webview

Estoy usando una vista web autenticada para mi aplicación. Se llama una url con respecto a un término de búsqueda, de modo que si ingresó abc en el cuadro de búsqueda, llamará a la url "http://something.com/something/a B C/ algo ". Se carga bien, hasta que tengo un término de búsqueda no válido que dice que si escribo" INVALIDCRAP "todavía tomará la url como"http://something.com/something/INVALIDCRAP/ algo y tratar de cargarlo dándome el error de condición previa 412. Quiero que sea tal que, en caso de que el identificador "INVALIDCRAP" no exista, en lugar del error de condición previa 412, me redirija a decir "google.com". ¿Alguna idea sobre cómo hacerlo? Gracias de antemano Aquí está mi código para el mismo:

 @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            Bundle bundle = this.getArguments();
            URL = getUrl();

            if(bundle != null)
                mSearchTerm = getArguments().getString(SEARCH_TERM);

             }
     public void setSearchTerms(String sTerms){
         mSearchTerm = sTerms;
     }
private static String getUrl(){
        String url = "";

        final String getuuid = SharedPreferencesManager.getInstance().getUUID();
        final String environmentApi = SharedPreferencesManager.getInstance().getEnvironmentApi();
        if (environmentApi.equalsIgnoreCase(NetworkUtils.Apis.ALPHA)) {
            "https://something.com/service/v1/?q="+mSearchTerm+"%20revenue&ui.theme=novadark&uuid="+getuuid+"&userAgent=android";



        }


@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        if (goingBack) {
            return null;
        }
        final MainActivity activity = (MainActivity) getActivity();
        final Resources resources = Application.getAppResources();

        activity.setBackPressListener(this);
        View view = inflater.inflate(R.layout.fragment_search_answers, container, false);


        mWebview =  (WebView)view.findViewById(R.id.webview);
        progressBar = (LinearLayout) view.findViewById(R.id.loading);   
        mWebview.setVisibility(View.VISIBLE);

        progressBar.setVisibility(View.VISIBLE);

            mWebview.setWebViewClient(new MyWebViewClient(this, mWebview));

            mWebview.setBackgroundColor(0);
            mWebview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
            mWebview.getSettings().setAllowFileAccess(true);
            mWebview.getSettings().setDomStorageEnabled(true);
            mWebview.getSettings().setJavaScriptEnabled(true);

            mWebview.setHttpAuthUsernamePassword(HOST, REALM, USERNAME, PASSWORD);
            mWebview.setScrollbarFadingEnabled(false);
            mWebview.getSettings().getLoadsImagesAutomatically();


            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
            mWebview.getSettings().setDisplayZoomControls(false);
            if(StringUtils.isEmpty(URL)){

            }else if(!StringUtils.isEmpty(URL)){


                if(URLUtil.isValidUrl(URL)){
                     mWebview.loadUrl(URL);
                }else{
                    mWebview.loadUrl("http://www.google.com");


                }

            }



        return view;
    }

  public class MyWebViewClient extends WebViewClient {
        private String loginCookie;
        public MyWebViewClient(AnswersWebViewFragment answersWebViewFragment, WebView webview) {
            super();
        }
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            view.setVisibility(View.VISIBLE);

        }

        @Override
        public void onPageFinished(WebView view, String url) {
            view.setVisibility(View.VISIBLE);
            CookieManager cookieManager = CookieManager.getInstance();
            cookieManager.setCookie(url, loginCookie);
            final Animation fade = new AlphaAnimation(0.0f, 1.0f);
            fade.setDuration(200);
            view.startAnimation(fade);
            view.setVisibility(View.VISIBLE);
            progressBar.setVisibility(View.GONE);

        }
        @Override
        public void onReceivedError( WebView view, int errorCode, String description, String failingUrl ) {
            Toast.makeText(view.getContext(), "Authentication Error", Toast.LENGTH_LONG).show();
            super.onReceivedError(view, errorCode, description, failingUrl);
        }

        @Override
        public void onLoadResource( WebView view, String url ){

        }
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {

                return super.shouldOverrideUrlLoading(view, url);


        }


        @Override
        public void onReceivedHttpAuthRequest( WebView view, final HttpAuthHandler handler, final String host, final String realm ){
                handler.proceed(USERNAME,PASSWORD);

    }

         @Override
        public void onReceivedSslError( WebView view, SslErrorHandler handler, SslError error ) {
            handler.proceed();
        }

    }

Aquí está la pantalla para el mismo:

Respuestas a la pregunta(1)

Su respuesta a la pregunta