문제

우리는 PHP 기반의 Mantis bugtracker(버전 1.1.8)를 사용하고 있습니다.버그 추가 작업 흐름을 쉽게 하기 위해 클립보드의 스크린샷을 '새 버그 양식'에 직접 붙여넣는 옵션을 추가하고 싶습니다.

스크린샷은 개발자에게 버그 보고서의 가치를 훨씬 더 높여주므로 가능한 한 쉽게 추가할 수 있도록 하고 싶습니다.외부 애플리케이션을 사용하지 않고 브라우저에서 바로 사용하는 것이 좋습니다.

나는 이것을 추가하는 방법을 다 찾아보았지만 운이 없었습니다.다른 사람들은 이것을 어떻게 하나요?나는 분명한 것을 놓치고 있습니까?

편집하다:버그 추적기는 소규모 회사의 개인용이므로 Java 애플릿과 같은 보안 위험을 기꺼이 받아들입니다.

도움이 되었습니까?

해결책 3

나는 꽤 잘 작동하는 자체 솔루션을 구축했습니다.스크린샷을 첨부하려는 페이지에 Java 파일 업로드 애플릿을 배치합니다.애플릿에는 두 개의 버튼이 있습니다:

  1. 클립보드의 이미지를 애플릿에 붙여넣는 '스크린샷 붙여넣기'
  2. 붙여넣은 이미지를 Mantis 서버의 /tmp 디렉토리에 업로드하고 자바스크립트 콜백을 사용하여 업로드된 이미지의 자동 생성된 파일 이름을 양식 필드에 배치하는 '스크린샷 업로드'.

양식이 제출되면 Mantis의 새로운 기능은 양식 필드의 파일 이름을 사용하여 이미지를 /tmp에서 최종 위치로 이동하고 다른 첨부 파일과 마찬가지로 이미지를 처리합니다.양식이 제출되지 않으면 업로드된 파일은 /tmp에 남아 있으며 결국 서버에 의해 제거됩니다.

잘 작동하지만 피할 수 없는 한 가지 단점이 있습니다.클라이언트의 클립보드에 액세스하기 위해 Java를 사용하고 있지만 이를 위해서는 JVM 샌드박스를 깨야 합니다.Verisign과 같은 회사에 연간 지불금(500달러 정도)을 지불해야 하는 애플릿에 디지털 서명을 하면 이 작업을 수행할 수 있습니다(현재 cacert.org와 같은 무료 옵션은 여전히 ​​유용성이 제한되어 있습니다).

Java 애플릿이 클립보드에 액세스하도록 허용하는 또 다른 방법은 홈 또는 프로필 디렉토리에 .java.policy라는 파일을 생성하는 것입니다.이 파일에는 다음이 포함되어야 합니다(도메인을 Java 애플릿을 호스팅하는 도메인으로 교체).

grant codeBase "http://bugs.example.com/-" {
  permission java.awt.AWTPermission "accessClipboard";
};

고맙게도 JVM은 사용되는 브라우저에 관계없이 항상 동일한 파일을 확인하므로 솔루션은 브라우저 간 호환됩니다.내 솔루션에서는 각 클라이언트 컴퓨터에 이 .java.policy 파일이 있어야 하므로 이상적이지는 않지만 통제된 ​​회사 환경에서 실행 가능하다고 생각합니다.

다른 팁

클라이언트에서 ActiveX, Applet 또는 Flash 유형 기술을 사용하지 않는 방법은 실제로 없습니다. 그럼에도 불구하고 수많은 보안로드 블록이 있습니다. 브라우저는 클립 보드에서 웹 사이트를 웹 사이트로 업로드하기에 적합한 형식으로 변환 할 수있는 쉬운 방법이 없으며 보안 문제가 발생하더라도 보안 문제가 발생할 수 있습니다. 예를 들어, 한 페이지의 악성 코드는 클립 보드에서 민감한 정보를 복사하여 그것이 일어나고 있음을 알지 못하고 페이지 사이트로 보낼 수 있습니다.

업데이트: 이있다 독립형 화면 캡처 유틸리티 Mantis (및 다른 많은 버그 트래커)와 함께 일한다고 주장합니다. 이것은 아마도 최선의 선택 일 것입니다.

Atlassian Confluence를위한 Drag N Drop Image Attacher Java Applet이있어 필요한 기능이 있습니다. 합류 만 지원하지만 SourceCode는 BSD에서 자유롭게 사용할 수 있으므로 필요에 맞게 사용자 정의 할 수 있어야합니다.

링크 잊어 버렸습니다.http://confluence.atlassian.com/display/confext/drag+and+ drop+image+ attacher+plugin

나는 이것을 보았다. 쉬운 방법은 없으므로 대신 무제한의 파일을 업로드 할 수 있었으며 해당 파일은 해당 버그에 "첨부"됩니다. 스크린 샷, 스프레드 시트, 워드 문서 등을 업로드 할 수 있기 때문에 실제로 더 나은 것으로 판명되었습니다.

당신과 마찬가지로 이것은 내부 유일한 사이트이므로 보안이 가볍습니다. ASP.NET 에서이 작업을 수행했지만 일반적인 아이디어는 버그에 대한 페이지를 찾을 때 업로드 상자가 있다는 것입니다. 그들이 무언가를 업로드 할 때 나는 버그 ID와 함께 사전에 호출합니다. Screenshot.jpg는 233_screenshot.jpg가됩니다.

또한 해당 페이지에는 해당 버그 ID로 시작하는 업로드 디렉토리의 모든 파일 이름에 바인딩되는 그리드 (GridView)가 있습니다.

이것이 어떻게 생겼는지 확인합니다 여기를 클릭하십시오.

기술 지향 사용자의 경우 항상 사용할 가능성이 있습니다. + Mylyn + Mylyn-Mantis 커넥터.

그런 다음 스크린을 업로드하는 것은 매우 쉽습니다.

스크린 샷 업로드 http://img216.imageshack.us/img216/246/screenshotattachments1.png

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top