Traduci app Java con l'IA
PTC (Private Translation Cloud) traduce i file .properties e il resto del tuo stack Java in oltre 40 lingue con l'IA, si integra con Maven o Gradle ed è certificato ISO 27001 per l'uso aziendale. La revisione visiva della traduzione verifica l'app in esecuzione in ogni lingua, così puoi rilasciare senza QA manuale per ogni release.
Spring Boot, Quarkus, Micronaut, Jakarta EE, JavaFX, Swing legacy: PTC gestisce ogni pattern i18n comune di Java. PTC copre le ricerche ResourceBundle, i bundle di risorse, le stringhe FXML e l'integrazione con il tool di build che usi già.
I team dei settori bancario, assicurativo, sanitario e delle telecomunicazioni che rilasciano app Java in mercati regolamentati usano PTC perché il flusso di lavoro si adatta alla loro pipeline di build e la certificazione ISO 27001 risponde ai requisiti di conformità prima ancora che l'ufficio acquisti lo chieda.
Inizia la tua prova di 30 giorni: traduci la tua app Java fin da subito
- 20.000 parole in 2 lingue
- Oltre 40 lingue supportate
- Revisione visiva della traduzione dell'app Java in esecuzione inclusa
- Certificazione ISO 27001: sicurezza aziendale e conformità già risolte
- Nessuna carta di credito richiesta
Traduci il tuo progetto Java in 3 passaggi
- Inizia un progetto nel tuo pannello di controllo PTC. Scegli la lingua di origine. PTC usa l'origine per selezionare il motore di traduzione corretto e per ignorare le stringhe che non richiedono traduzione (nomi di brand, URL, identificatori non traducibili).
- Carica i tuoi file
.propertieso collega il tuo repository Git. PTC analizza ogni ResourceBundle ed estrae solo i valori traducibili. Restituisce le traduzioni comemessages_xx.propertiesrispettando la convenzione di denominazione prevista da Java. Il conteggio delle parole viene mostrato prima di consumare qualsiasi quota della prova. - Scegli le lingue di destinazione e conferma. PTC traduce in background. Per i team che usano Maven e Gradle, i bundle tradotti arrivano come merge request sul tuo repository.
La prova copre 20.000 parole in 2 lingue senza carta di credito. È sufficiente per tradurre un set consistente di ResourceBundle da cima a fondo prima di attivare Pay-As-You-Go.
Cosa distingue PTC per la traduzione Java
Ogni voce qui sotto rimanda alla sezione dettagliata più in basso nella pagina.
- PTC impara il vocabolario del tuo prodotto e la voce del brand: traduzioni su misura per ogni progetto, con un'accuratezza contestualizzata in ogni ResourceBundle.
- Revisione visiva della traduzione della tua app Java in esecuzione: PTC esamina l'app visualizzata, così puoi rilasciare senza QA manuale per lingua.
- Certificazione ISO 27001 per l'uso aziendale: il tuo team di sicurezza e conformità può dare l'approvazione senza ulteriori revisioni.
- Integrazione con Maven, Gradle e Spring Boot: un push che aggiunge o modifica le stringhe di origine ritorna come merge request.
- Conservazione di ResourceBundle, plurali e formati: ogni convenzione i18n di Java gestita correttamente.
PTC impara il vocabolario del tuo prodotto e la voce del brand
PTC analizza i tuoi file .properties di origine al momento del caricamento. Genera automaticamente una descrizione del prodotto e usa tale descrizione per tradurre con il tono e la terminologia corretti.
Se la tua app bancaria chiama un record «Statement» anziché «Transaction Summary», PTC mantiene questa distinzione in ogni lingua di destinazione. La stessa descrizione si applica a ogni release dello stesso progetto. Puoi rivedere e modificare la descrizione generata automaticamente prima dell'esecuzione della traduzione.
La maggior parte dei tool generici di IA vede una chiave come error.user_locked e traduce il valore senza sapere se l'utente è una persona o un titolare di conto. PTC impara prima il vocabolario del tuo ambito. Il 99,5% delle traduzioni va in produzione senza modifiche.
Revisione visiva della traduzione della tua app Java in esecuzione: rilascia senza QA manuale per lingua
Un file .properties tradotto è necessario ma non sufficiente. L'etichetta tradotta potrebbe fuoriuscire da un pulsante a larghezza fissa in un'app desktop JavaFX. Un messaggio di errore in tedesco potrebbe risultare un sostantivo quando il flusso di lavoro richiedeva un verbo. Una stringa hardcoded in inglese al di fuori di ResourceBundle.getString() verrà visualizzata non tradotta, indipendentemente da quante lingue rilasci.
L'AI Visual QA di PTC copre entrambi i tipi comuni di app Java:
- Estensione del browser per web app Spring Boot, web app Jakarta EE e qualsiasi backend Java che fornisce HTML. Installala una volta, registra un percorso guidato delle schermate della tua app su un ambiente di staging. PTC riproduce la registrazione dopo ogni aggiornamento della traduzione.
- Caricamento delle schermate per JavaFX, Swing o qualsiasi app Java non basata su browser. Carica una schermata per lingua per ogni videata. L'IA visiva di PTC ispeziona il risultato renderizzato allo stesso modo.
I problemi che PTC può risolvere nel file .properties (mancata corrispondenza verbo-sostantivo, overflow del layout, mancate corrispondenze nei plurali) vengono corretti automaticamente. I problemi che risiedono nel tuo codice Java (wrapper ResourceBundle.getString() mancanti, valori letterali hardcoded, concatenazione di frasi che dovrebbe usare MessageFormat) ritornano come prompt pronti da incollare per Cursor o Claude Code.
Non rilasci un file .properties tradotto sperando che vada bene. Rilasci un'app Java multilingue e verificata.
Certificazione ISO 27001 per l'uso enterprise
PTC tratta i tuoi dati e quelli dei tuoi utenti secondo standard di sicurezza riconosciuti a livello internazionale. Per i team del settore bancario, assicurativo, sanitario e delle telecomunicazioni, la certificazione risponde al problema della conformità prima ancora che l'ufficio acquisti lo ponga.
Le tue stringhe di origine contengono spesso nomi di prodotti, terminologia rivolta ai clienti ed esempi occasionali che includono dati dei clienti. Lo standard ISO 27001 attesta che PTC tratta ogni byte di questi dati con controlli documentati: registrazione degli accessi, crittografia in transito e a riposo, valutazione dei fornitori, risposta agli incidenti. Il tuo team di revisione della sicurezza vede il certificato, dà l'approvazione e tu puoi rilasciare.
Integrazione con Maven, Gradle e Spring Boot
Per i progetti Maven, configura uno step di traduzione nella tua build:
source_locale: en
files:
- file: src/main/resources/messages.properties
output: src/main/resources/messages_{{lang}}.properties
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<id>ptc-translate</id>
<phase>prepare-package</phase>
<goals><goal>exec</goal></goals>
<configuration>
<executable>./ptc-cli.sh</executable>
<arguments>
<argument>--config-file</argument><argument>.ptc-config.yml</argument>
<argument>--api-token=${env.PTC_API_TOKEN}</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
Per Gradle, lo stesso flusso viene eseguito da build.gradle.kts:
tasks.register<Exec>("ptcTranslate") {
commandLine(
"./ptc-cli.sh",
"--config-file", ".ptc-config.yml",
"--api-token=${System.getenv("PTC_API_TOKEN")}"
)
}
tasks.named("processResources") {
dependsOn("ptcTranslate")
}
Per Spring Boot, punta MessageSource ai bundle di risorse tradotti e Spring li carica automaticamente in base a Accept-Language:
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource source = new ReloadableResourceBundleMessageSource();
source.setBasename("classpath:i18n/messages");
source.setDefaultEncoding("UTF-8");
return source;
}
PTC sincronizza le nuove stringhe, traduce solo ciò che è cambiato e apre una merge request con i bundle aggiornati. Consulta la reference dell'API di PTC per il flusso webhook e REST completo.
Conservazione di ResourceBundle, plurali e formati
PTC supporta fin da subito tutte le convenzioni i18n di Java:
- Sintassi
.properties. Commenti, coppiekey = value, continuazioni di riga e sequenze di escape Unicode (\u00FC) vengono tutti conservati. - Segnaposto
ChoiceFormateMessageFormat. I pattern{0},{0,number}e{1,date,short}vengono mantenuti nella posizione corretta per ogni lingua di destinazione. - Forme plurali tramite ICU4J. PTC genera le categorie di plurali corrette per ogni lingua (polacco: one/few/many/other; giapponese: solo other; arabo: sei forme).
- Convenzione degli argomenti posizionali di Spring.
{0}e{1}per le chiamateMessageSource.getMessage(code, args, locale). - Lingue right-to-left. Arabo, ebraico, persiano e urdu tradotti correttamente. Dopodiché subentrano il tuo
rtl.csse il lavoro sul layout bidirezionale.
Traduci note di rilascio, README e altri testi al di fuori dei file di risorse
Le note di rilascio di Java, il README sul tuo repository Maven interno o su GitHub, le email per i clienti inviate dalla tua app, la documentazione di supporto: tutto questo si trova al di fuori di .properties. La funzionalità Paste to Translate di PTC li gestisce tutti. Incolla il testo di origine nel pannello di controllo di PTC, scegli le lingue di destinazione e ottieni traduzioni che usano lo stesso glossario e la stessa voce del brand delle tue stringhe in-app. Coerenza garantita dalla schermata dell'app all'email di rilascio, fino all'articolo di supporto.
Traduci contenuto dinamico e generato dagli utenti con l'API di PTC
Le app Java enterprise spesso gestiscono contenuti generati dagli utenti che richiedono di essere tradotti non appena arrivano: ticket di supporto, voci della knowledge base, pagine wiki interne, recensioni di prodotti inviate dai clienti, chat multilingue. L'API REST di PTC traduce questi contenuti su richiesta:
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://app.ptc.wpml.org/api/v1/content_translation"))
.header("Authorization", "Bearer " + apiKey)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(
"{\"data\": {\"ticket\": \"" + ticketText + "\"}, \"name\": \"Support ticket\", \"target_languages\": [\"es\", \"de\"]}"
))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
// Poll GET /api/v1/content_translation/{id}/status until completeness == 100,
// then GET /api/v1/content_translation/{id} to retrieve the translated fields.
Autenticazione basata su token (Bearer), richieste/risposte JSON e lo stesso addestramento su glossario e voce del brand utilizzato dai tuoi file .properties. Consulta la reference dell'API di PTC per il catalogo completo degli endpoint, i limiti di frequenza delle richieste e le convenzioni sui codici lingua.
Automatizza la traduzione dal tuo repository Git
PTC si integra con GitHub, GitLab e Bitbucket. Le nuove stringhe nel tuo messages.properties attivano un'esecuzione della traduzione automatica. I bundle tradotti risultanti tornano sotto forma di merge request. Revisiona e fai il merge come parte del tuo normale processo di code review.
Prezzi: prova di 30 giorni, poi Pay-As-You-Go
La prova copre 20.000 parole in 2 lingue senza carta di credito. Al termine della prova, PTC offre il Pay-As-You-Go. Nessun abbonamento. Nessun impegno minimo. Le prime 500 parole di ogni mese sono gratuite e paghi solo per il resto. La pagina dei prezzi include un calcolatore dei costi. Per gli uffici acquisti enterprise che necessitano di un contratto annuale, registrati con un'email aziendale per una prova business estesa.
Pronto a rilasciare un'app Java verificata?
Carica i tuoi file .properties. PTC li traduce in oltre 40 lingue ed esegue una revisione visiva dell'app Java in esecuzione per ciascuna di esse. Lo standard ISO 27001 si occupa della conformità. E tu rilasci con sicurezza.
Inizia la tua prova di 30 giorni: 20.000 parole offerte da noi, nessuna carta di credito richiesta.
Per la procedura completa passo passo sull'internazionalizzazione di un'app Java, consulta la guida all'internazionalizzazione Java. Per un quadro più ampio sulla localizzazione CI/CD, vedi Localizzazione software con IA creata per le pipeline CI/CD.