Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465

    Codice del libro non funzionante (ListResourceBundle)

    Se c'è una cosa che odio è perdere un sacco di tempo su dei codici che non funzionano sul mio pc... ma "sul manuale" si...

    Il software presentato dal manuale è articolato in 3 file distinti che io ho messo dentro un progetto e un package con nomi a piacere.

    codice:
    package risorse;
    
    import java.util.*;
    
    //Default version (English).
    public class SampleRB extends ListResourceBundle {
    protected Object[][] getContents() {
     Object[][] resources = new Object[3][2];
    
     resources[0][0] = "title";
     resources[0][1] = "My Program";
    
     resources[1][0] = "StopText";
     resources[1][1] = "Stop";
    
     resources[2][0] = "StartText";
     resources[2][1] = "Start";
    
     return resources;
    }
    }
    codice:
    package risorse;
    
    import java.util.*;
    
    //German version.
    public class SampleRB_de extends ListResourceBundle {
    protected Object[][] getContents() {
     Object[][] resources = new Object[3][2];
    
     resources[0][0] = "title";
     resources[0][1] = "Mein Programm";
    
     resources[1][0] = "StopText";
     resources[1][1] = "Anschlag";
    
     resources[2][0] = "StartText";
     resources[2][1] = "Anfang";
    
     return resources;
    }
    }
    codice:
    package risorse;
    
    // Demonstrate a resource bundle.
    import java.util.*; 
    
    class LRBDemo { 
      public static void main(String args[]) { 
        ResourceBundle rd = ResourceBundle.getBundle("SampleRB");
    
        System.out.println("English version: ");
        System.out.println("String for Title key : " +
                           rd.getString("title"));
    
        System.out.println("String for StopText key: " +
                           rd.getString("StopText"));
    
        System.out.println("String for StartText key: " +
                           rd.getString("StartText"));
    
        rd = ResourceBundle.getBundle("SampleRB", Locale.GERMAN);
    
        System.out.println("\nGerman version: ");
        System.out.println("String for Title key : " +
                           rd.getString("title"));
    
        System.out.println("String for StopText key: " +
                           rd.getString("StopText"));
    
        System.out.println("String for StartText key: " +
                           rd.getString("StartText"));
      } 
    }
    l'errore che ottengo è il seguente:

    Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name SampleRB, locale it_IT
    at java.util.ResourceBundle.throwMissingResourceExcep tion(Unknown Source)
    at java.util.ResourceBundle.getBundleImpl(Unknown Source)
    at java.util.ResourceBundle.getBundle(Unknown Source)
    at risorse.LRBDemo.main(LRBDemo.java:8)

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Dove li hai messi i file delle risorse?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    Ho creato un progetto con nome "ResourceBundle", all'interno ci ho messo un package con nome risorse e dentro quest'ultimo 3 classi:
    LRBDemo.java
    SampleRN_de.java
    SampleRB.java
    Non ho fatto altro!

  4. #4
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    Avete provato anche voi, vi funziona?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    non abbiamo tutto il tempo di provare spezzone dei tuoi codici.
    Lo studio di un linguaggio di programmazione passa per diverse fasi, una di queste è leggere l'errore che ti viene messo a video e capire cosa vuole dire.
    Da quello che leggo
    Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name SampleRB, locale it_IT
    at java.util.ResourceBundle.throwMissingResourceExcep tion(Unknown Source)
    cerchi una risorsa in italiano, ma non l'hai definita (o non l'hai messa dove possa trovarla agevolmente).
    RTFM Read That F*** Manual!!!

  6. #6
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    Originariamente inviato da valia
    non abbiamo tutto il tempo di provare spezzone dei tuoi codici.
    Lo studio di un linguaggio di programmazione passa per diverse fasi, una di queste è leggere l'errore che ti viene messo a video e capire cosa vuole dire.
    Da quello che leggo


    cerchi una risorsa in italiano, ma non l'hai definita (o non l'hai messa dove possa trovarla agevolmente).
    E' per questo che ho scritto! Non capisco perché non sia definita la risorsa in italiano, ho anche provato ad aggiungere:

    codice:
    package risorse;
    
    import java.util.*;
    
    //Default version (Italian).
    public class SampleRB_it extends ListResourceBundle {
    protected Object[][] getContents() {
     Object[][] resources = new Object[3][2];
    
     resources[0][0] = "Titolo";
     resources[0][1] = "MioProgramma";
    
     resources[1][0] = "StpoTesto";
     resources[1][1] = "Stop";
    
     resources[2][0] = "InizioTesto";
     resources[2][1] = "Inizio";
    
     return resources;
    }
    }
    dentro SampleRB_it.java ed editare:
    ResourceBundle rd = ResourceBundle.getBundle("SampleRB");
    in questa:
    ResourceBundle rd = ResourceBundle.getBundle("SampleRB_it", Locale.ITALIAN);
    ma non funziona ugualmente...


  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Originariamente inviato da peruzzo
    E' per questo che ho scritto! Non capisco perché non sia definita la risorsa in italiano, ho anche provato ad aggiungere:
    perché quella la devi scrivere tu e metterla dove si aspetta di trovarla!!!
    Questo è per farti capire quanto è facile cambiare da una risorsa all'altra, non ha in automatico tutte le lingue!!!
    RTFM Read That F*** Manual!!!

  8. #8
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    Ma hai letto la discussione? Ho aggiunto la risorsa in Italiano ma continua a non funzionare...

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Originariamente inviato da peruzzo
    Ma hai letto la discussione? Ho aggiunto la risorsa in Italiano ma continua a non funzionare...
    si che ho letto. Quello che non ti è chiaro è che le risorse non vanno messe dove capita e che nell'usarle bisogna seguire le regole del linguaggio.
    Se ci sono problemi si va a guardare la javadoc, senza aspettare che qualcuno lo risolva per te.

    Il punto è che la risorsa non è dove si aspetta di trovarla.
    Questo dipende da tanti fattori, in primis conoscere anche l'organizzazione della tua macchina (cosa che io non so), quindi più di fare una ricerca su google, trovare problemi simili, dirti di controllare quello che fai non posso.

    Ovviamente tu ti rifiuti anche di cercare risorse in inglese, ma il caro vecchio stackoverflow non mi tradisce
    RTFM Read That F*** Manual!!!

  10. #10
    Utente bannato
    Registrato dal
    Sep 2012
    Messaggi
    465
    Questo codice/problema di impostazioni non siete in grado di aggiustarlo... ammettetelo...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.