2011-10-31 4 views
0

VM 인수 -Dnetwork.proxy_host 및 -Dnetwork.proxy_port를 해당 값으로 설정하여 프록시를 사용하도록 내 SWT 브라우저 응용 프로그램을 성공적으로 구성했습니다.SWT 브라우저 플러그인이 프록시 인증을 약속하지 않습니다.

그러나 프록시에는 인증이 필요하지만 사용자 이름/암호 프롬프트가 열리지 않습니다. 인증 수신기를 등록 할 때 청취자는 트리거되지 않습니다.

Linux 데비안 64 비트 배포판에서 문제가 발생했습니다. 동일한 응용 프로그램을 Windows 용으로 컴파일 할 때 모두 정상적으로 작동합니다. 즉, 암호 프롬프트가 열립니다. SWT 브라우저는 WEBKIT가 아니라 MOZILLA를 사용하도록 구성됩니다. Unfortunatelly 나는 주어진 환경에 제한되어 있기 때문에 WEBKIT로 테스트 할 수 없습니다.

임시 해결책 : Linux Mozilla 브라우저를 시작할 때 프롬프트가 표시됩니다. 올바른 값을 입력 한 후에 SWT 브라우저 응용 프로그램을 시작하면 인증이 필요 없으며 인터넷에 액세스 할 수 있습니다. 그러나 이것은 좋은 해결책이 아닙니다.

"addLocationListener"를 사용하여 위치 수신기를 등록하면 url 호출이 계속 진행되는 것을 볼 수 있습니다. 그러면 초기 URL (예 : www.google.de)이 프록시의 특정 http 사이트를 호출하는 결과를 볼 수 있습니다 섬기는 사람. 이 http 사이트는 프록시의 https 사이트로 리디렉션됩니다. 그런 다음 https 사이트에서 http 리디렉션 페이지를 다시 호출합니다. 이것은 무한 루프입니다. SWT Browser 클래스의 Java 코드 어딘가에는 그 페이지로 setUrl을 호출하는 루틴이 있습니다 (어떤 결과가 무한 루프가되는지) 어떤 이유로 든 모든 인증 수신기를 호출하지 않아도됩니다.

어쩌면 누군가가이 인증 프로세스에서 잘못된 점이 무엇인지 알 수 있습니까?

답변

1

나는 해결책이 없지만 힌트가 있습니다. "Linux Mozilla Browser"가 무슨 의미인지 모르겠습니다. Firefox와 Xulrunner를 알고 있습니다. 그러나 귀하의 해결 방법은 프로파일 정보가 어떻게 든 공유되며 이는 일어나지 않아야 함을 암시합니다.

프로파일을 정의하는 방법 (웹 브라우저가 캐시, 구성, SSL 인증서, 플러그인 등을 유지하는 방법)을 찾는 방법을 찾았지만 아무 소용이 없었습니다. 프록시 서버로 전송 요청에 사용자/암호 정보를 추가 할 수있는 방법을 찾기 위해 How do I set a proxy for the Browser to use?

시도해보십시오 자주 묻는 질문에

이 항목은 프록시 호스트를 설정하는 방법을 보여줍니다. 실패한 경우 실제 프록시에 업스트림으로 연결하고 자체를 인증 할 수있는 로컬 프록시를 만듭니다. 답장을 Flexible Mozilla profile support - new API request

+0

감사 :

버그 데이터베이스를 보면, 브라우저 프로파일에 대한 지원은 없습니다. 네, 실제로 "리눅스 모질라 브라우저"가있는 파이어 폭스 응용 프로그램을 의미했습니다. 내 노트북에 비밀 번호 인증을 사용하여 내 노트북에 로컬 프록시 (오징어)를 설치 했으므로 정상적으로 작동합니다. 즉, 프롬프트가 나타납니다. 하지만 환경이 약간 다르기 때문에 (동일한 자바 프로그램이지만 다른 프록시 구성, 아키텍처 및 리눅스 배포판이 다르기 때문에 말하기가 어렵습니다.) 직장에서이 문제를 계속 조사 할 것입니다. – eagle

+0

예, 실제로 인증 데이터를 공유하는 것 같습니다. 응용 프로그램이 원하는 동작이 아닌지 확실하지 않은 경우 – eagle

+0

이것은 발생하지 않아야하며 사용중인 SWT 버전은 무엇입니까? –

관련 문제