{"record":{"id":"8f6a2c94270cad4f","repo":"languagetool-org/languagetool","slug":"timeout-accessing-wikipediaurl","errorCode":null,"errorMessage":"Timeout accessing + wikipediaUrl","messagePattern":"Timeout accessing \\+ wikipediaUrl","errorType":"exception","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"languagetool-wikipedia/src/main/java/org/languagetool/dev/wikipedia/WikipediaQuickCheck.java","lineNumber":276,"sourceCode":"    for (Rule rule : allActiveRules) {\n      if (rule.isDictionaryBasedSpellingRule()) {\n        languageTool.disableRule(rule.getId());\n      }\n    }\n  }\n\n  private String getContent(URL wikipediaUrl) throws IOException {\n    try {\n      HttpURLConnection conn = (HttpURLConnection) wikipediaUrl.openConnection();\n      conn.setRequestMethod(\"GET\");\n      conn.setConnectTimeout(30_000);\n      conn.setReadTimeout(30_000);\n      conn.connect();\n      try (InputStream contentStream = (InputStream) conn.getContent()) {\n        return StringTools.streamToString(contentStream, \"UTF-8\");\n      }\n    } catch (SocketTimeoutException e) {\n      throw new RuntimeException(\"Timeout accessing \" + wikipediaUrl, e);\n    }\n  }\n\n  /*public static void mainTest(String[] args) throws IOException {\n      TextFilter filter = new SwebleWikipediaTextFilter();\n      String plainText = filter.filter(\"hallo\\n* eins\\n* zwei\");\n      System.out.println(plainText);\n  }*/\n    \n  public static void main(String[] args) throws IOException, PageNotFoundException {\n    if (args.length != 1) {\n      System.out.println(\"Usage: \" + WikipediaQuickCheck.class.getName() + \" <url>\");\n      System.exit(1);\n    }\n    WikipediaQuickCheck check = new WikipediaQuickCheck();\n    // URL examples:\n    //String urlString = \"http://de.wikipedia.org/wiki/Angela_Merkel\";\n    //String urlString = \"https://de.wikipedia.org/wiki/Benutzer_Diskussion:Dnaber\";","sourceCodeStart":258,"sourceCodeEnd":294,"githubUrl":"https://github.com/languagetool-org/languagetool/blob/2e990059ce67d5e2a0f7f7ca5d31160c6709df4b/languagetool-wikipedia/src/main/java/org/languagetool/dev/wikipedia/WikipediaQuickCheck.java#L258-L294","documentation":"Network guard in WikipediaQuickCheck.getContent: the HTTP connection to the Wikipedia URL timed out (30s connect/read limit), so the page content could never be fetched.","triggerScenarios":"Thrown at languagetool-wikipedia/src/main/java/org/languagetool/dev/wikipedia/WikipediaQuickCheck.java:276 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Retry the request; Wikipedia throttling is often transient","Increase the connect/read timeouts","Add caching or rate limiting to avoid repeated heavy fetches"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2e990059ce67d5e2a0f7f7ca5d31160c6709df4b","analyzedAt":"2026-09-06T09:20:17.015Z","contentChangedAt":"2026-09-06T09:20:17.015Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}