PTC

Traduci app Java con l'IA

PTC (Private Translation Cloud) traduce i file .properties Java 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, legacy Swing: PTC gestisce ogni pattern i18n comune di Java. PTC copre le ricerche ResourceBundle, i bundle di risorse, le stringhe FXML e l'integrazione con i 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 workflow si adatta alla loro pipeline di build e la certificazione ISO 27001 risponde alla questione della conformità prima che l'ufficio acquisti la ponga.

Inizia la tua prova di 30 giorni: traduci subito la tua app Java

  • 20.000 parole in 2 lingue
  • Oltre 40 lingue supportate
  • Revisione visiva della traduzione dell'app Java in esecuzione inclusa
  • Certificato ISO 27001 - sicurezza aziendale e conformità già risolte
  • Nessuna carta di credito richiesta

Inizia la tua prova

Traduci il tuo progetto Java in 3 passaggi

  1. Inizia un progetto nel tuo pannello di controllo PTC. Scegli la tua lingua di origine. PTC usa l'origine per scegliere il motore di traduzione corretto e per saltare le stringhe che non richiedono traduzione (nomi di brand, URL, identificatori non traducibili).
  2. Carica i tuoi file .properties o collega il tuo repository Git. PTC analizza ogni ResourceBundle ed estrae solo i valori traducibili. Restituisce le traduzioni come messages_xx.properties rispettando la convenzione di denominazione prevista da Java. Il conteggio delle parole viene mostrato prima di impegnare qualsiasi quota della prova.
  3. 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 in 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

PTC analizza i tuoi file .properties di origine al momento del caricamento. Genera automaticamente una descrizione del prodotto e la usa 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 viene mantenuta per ogni release dello stesso progetto. Puoi revisionare e modificare la descrizione generata automaticamente prima dell'esecuzione della traduzione.

La maggior parte degli strumenti di IA generici 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 dominio. 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 andare in overflow in un pulsante a larghezza fissa in un'app desktop JavaFX. Un messaggio di errore in tedesco potrebbe essere letto come un sostantivo quando il workflow richiedeva un verbo. Una stringa in inglese hardcoded 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 per browser. Carica una schermata per lingua per ogni schermata dell'app. 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, errori nei plurali) vengono risolti automaticamente. I problemi che risiedono nel tuo codice Java (wrapper ResourceBundle.getString() mancanti, letterali hardcoded, concatenazione di frasi che dovrebbe usare MessageFormat) tornano come prompt pronti da incollare per Cursor o Claude Code.

Non rilasci un file .properties tradotto sperando che vada bene. Rilasci un'app Java verificata e multilingue.

Certificato ISO 27001 per l'uso aziendale

PTC gestisce i tuoi dati e quelli dei tuoi utenti secondo standard di sicurezza riconosciuti a livello internazionale. Per i team dei settori bancario, assicurativo, sanitario e delle telecomunicazioni, la certificazione risponde alla questione della conformità prima che l'ufficio acquisti la ponga.

Le tue stringhe di origine contengono spesso nomi di prodotti, terminologia rivolta ai clienti ed esempi occasionali che coinvolgono i dati dei clienti. La norma ISO 27001 attesta che PTC gestisce ogni singolo byte con controlli documentati: registrazione degli accessi, crittografia in transito e a riposo, valutazioni dei fornitori, risposta agli incidenti. Il tuo team di revisione della sicurezza vede il certificato; dà l'approvazione; tu rilasci.

Integrazione con Maven, Gradle e Spring Boot

Per i progetti Maven, configura un passaggio 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 verso i bundle 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 il riferimento API di PTC per il flusso webhook e REST completo.

Conservazione di ResourceBundle, plurali e formati

PTC gestisce ogni convenzione i18n di Java fin da subito:

  • Sintassi .properties. Commenti, coppie key = value, continuazioni di riga e sequenze di escape Unicode (\u00FC) tutti conservati.
  • Segnaposto ChoiceFormat e MessageFormat. Pattern {0}, {0,number}, {1,date,short} mantenuti nella posizione corretta per ogni lingua di destinazione.
  • Forme plurali tramite ICU4J. PTC genera le categorie plurali corrette per ogni lingua (polacco: one/few/many/other; giapponese: solo other; arabo: sei forme).
  • Convenzione degli argomenti posizionali di Spring. {0}, {1} per le chiamate MessageSource.getMessage(code, args, locale).
  • Lingue right-to-left. Arabo, ebraico, persiano e urdu tradotti correttamente. Il tuo rtl.css e il lavoro sul layout bidirezionale subentrano poi.

Traduci note di rilascio, README e altri testi al di fuori dei tuoi file di risorse

Le note di rilascio Java, il README sul tuo repository Maven interno o su GitHub, le e-mail rivolte ai clienti inviate dalla tua app, la documentazione di supporto - risiedono tutti al di fuori di .properties. La funzionalità Paste to Translate di PTC li gestisce tutti. Incolla il testo di origine nel pannello di controllo 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 dalla schermata dell'app all'e-mail di release fino all'articolo di supporto.

Traduci contenuto dinamico e generato dagli utenti con l'API di PTC

Le app Java aziendali gestiscono spesso contenuti generati dagli utenti che richiedono traduzione nel momento in cui arrivano: ticket di supporto, voci della knowledge base, pagine wiki interne, recensioni dei 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), richiesta/risposta JSON e lo stesso addestramento su glossario e voce del brand usato dai tuoi file .properties. Consulta il riferimento API di PTC per il catalogo completo degli endpoint, i limiti di frequenza delle richieste e le convenzioni per i codici lingua.

Automatizza la traduzione dal tuo repository Git

PTC si integra con GitHub, GitLab e Bitbucket. Le nuove stringhe nel tuo messages.properties innescano un'esecuzione automatica della traduzione. I bundle tradotti risultanti tornano indietro come merge request. Revisiona ed esegui 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 ha un calcolatore dei costi. Per l'ufficio acquisti aziendale che necessita di un contratto annuale, registrati con un'e-mail 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 la revisione visiva dell'app Java in esecuzione in ognuna di esse. Lo standard ISO 27001 si occupa della conformità. Tu rilasci in tutta sicurezza.

Inizia la tua prova di 30 giorni: 20.000 parole offerte da noi, nessuna carta di credito richiesta.

Per la procedura completa sull'internazionalizzazione di un'app Java, consulta la guida all'internazionalizzazione di Java. Per il quadro più ampio sulla localizzazione CI/CD, vedi Localizzazione software con IA creata per le pipeline CI/CD.