WAR Runner는 안드로이드 스마트폰을 소형 Java 웹 서버로 바꿔줍니다. Jetty 12와 Servlet 6.1을 내장하여 WAR 파일로 패키징된 실제 웹 애플리케이션을 실행할 수 있습니다. 실행된 앱은 스마트폰의 브라우저는 물론, 동일한 Wi-Fi 또는 LAN 네트워크에 연결된 모든 기기에서 접속 가능합니다.
🌐 웹 서버
• 목록에서 데모를 선택하세요. 처음 사용 시 온라인 카탈로그에서 다운로드되며 SHA-256 체크섬으로 검증됩니다. 앱 내부에는 WAR 파일이 포함되어 있지 않습니다.
• HTTP(8080 포트) 또는 HTTPS(8443 포트)를 통해 자체 서명된 인증서로 서비스를 제공합니다.
• 다른 기기에서 접속할 수 있는 주소 목록이 표시되며, 복사할 수 있습니다.
• 서버는 백그라운드에서 실행되며 알림이 표시됩니다. 앱 또는 알림을 통해 서버를 중지할 수 있습니다.
• 다운로드한 데모는 기기에 저장되어 오프라인에서도 사용할 수 있습니다.
🛠️ 웹 관리자
• 비밀번호로 보호되며, HTTPS를 통해 9443번 포트에서만 접속 가능합니다.
• 카탈로그 데모를 다운로드하고, Android용으로 변환한 WAR 파일을 업로드하고, 다른 기기의 브라우저에서 데모를 시작, 중지 또는 삭제할 수 있습니다.
• 세션은 30분 동안 활동이 없으면 만료되며, 반복적인 로그인 실패 시 일정 시간 동안 로그인이 잠깁니다.
• 서버가 중지된 상태에서도 설정에서 세 가지 포트를 모두 변경할 수 있습니다.
포함된 데모
• Hello World 서블릿: 일반 텍스트를 반환하는 최소한의 서블릿입니다.
• Vaadin 버튼 데모: 클릭 리스너가 휴대폰에서 Java로 실행되는 Vaadin Flow 뷰입니다.
• 공식 Vaadin 데모: 대시보드, 컴포넌트 갤러리, 제품, 사용자 및 설정입니다.
• Vaadin 서점 데모: 로그인(관리자/admin 또는 사용자/user)을 통한 재고 편집입니다.
• Vaadin 주소록 데모: 메모리 내 H2 데이터베이스에 저장된 연락처입니다.
🎯 오픈 소스
데모 WAR 파일 빌드 스크립트, 데모 소스 코드, 그리고 일반 WAR 파일을 안드로이드 호환 파일로 변환하는 가이드는 GitHub에 게시되어 있습니다.
참고 사항
• 안드로이드 15 이상이 필요합니다.
• 한 번에 하나의 웹 애플리케이션만 실행됩니다.
• 서버는 모든 네트워크 인터페이스에 바인딩되지만 Wi-Fi 및 이더넷 주소만 광고합니다.
• 이 프로젝트는 안드로이드 실험용이며, 최신 스마트폰에서 실행 가능한 기능을 보여주는 데모입니다. 안전한 운영 환경을 위한 서버가 아니므로 신뢰할 수 있는 네트워크에서 사용하십시오.
• 모든 기능은 무료입니다. 일회성 구매를 통해 프로젝트를 지원할 수 있습니다.
내장된 Jetty 서버를 사용하여 휴대폰에서 실제 Java 웹 앱을 실행하세요.