Antes de mais nada, peco desculpa caso esta duvida jah tenha sido postada, mas a ferramenta de busca soh retorna “java.lang.reflect.InvocationTargetException: General error message from server: “Got error 134 from table handler”” e eu jah olhei todos os artigos e as primeiras 100 paginas do Java Avancado. Sendo assim, vamos a duvida:
Estou trabalhando numa aplicacao que tem um site oficial. Em um item do menu desta aplicacao, preciso abrir o browser default do usuario na url do site, seja lah qual for o browser ou o sistema operacional. Jah vi varias implementacoes que utilizam runtime e .exec pra fazer chamadas, mas todas tentam adivinhar qual browser o usuario tem instalado no linux…
Jah li que atraves do pacote jnlp podemos, pela classe BasicService, chamar o metodo “showDocument”, mas infelizmente o pacote jnlp nao traz nenhuma implementacao desta BasicService.
Enfim, alguem sabe como fazer isso de forma cross-plataform?
Nao tem problema nenhum com exec propriamente dito. O problema eh qual string passar para ele. Ainda que eu identifique o sistema em que o software estah rodando para abrir o cmd do windows ou o shell do linux, o que eu devo passar para abrir o browser se eu nao sei qual browser eh o default do sistema???
Pra começar, existem dois desktops diferentes, pelo menos, que são o KDE e o Gnome, então já viu… Talvez você pudesse identificar qual é o “sabor” do Linux (por exemplo, se é Red Hat, SuSE, Conectiva) e procurar mais coisas. Que tal perguntar num fórum Linux?