AEM可以从发布实例

时间:2017-02-13 16:04:03

标签: java aem

我有一个要求,我需要将新文件写入JCR文件系统。有时,创建此新文件的请求源自发布服务器实例。最初,我试图创建一个页面节点,但是在发布实例上遇到了权限问题。有没有办法避免这个权限问题,并从发布服务器写入文件? (java正在服务器上使用)

1 个答案:

答案 0 :(得分:0)

可能您正试图与没有适当权限的匿名用户写一些东西。您需要使用提升的权限运行代码。

在AEM 6.0及以上版本中,您应该获得camera.setPreviewCallback(new Camera.PreviewCallback() { @Override public void onPreviewFrame(byte[] data, Camera camera) { Log.d("onPreviewFrame", "" + data.length); Camera.Parameters parameters = camera.getParameters(); int width = parameters.getPreviewSize().width; int height = parameters.getPreviewSize().height; ByteArrayOutputStream outstr = new ByteArrayOutputStream(); Rect rect = new Rect(0, 0, width, height); YuvImage yuvimage = new YuvImage(data, ImageFormat.NV21, width, height, null); yuvimage.compressToJpeg(rect, 20, outstr); Bitmap bmp = BitmapFactory.decodeByteArray(outstr.toByteArray(), 0, outstr.size()); detector = new FaceDetector.Builder(getApplicationContext()) .setTrackingEnabled(true) .setClassificationType(FaceDetector.ALL_LANDMARKS) .setMode(FaceDetector.FAST_MODE) .build(); detector.setProcessor( new MultiProcessor.Builder<>(new GraphicFaceTrackerFactory()) .build()); if (detector.isOperational()) { frame = new Frame.Builder().setBitmap(bmp).build(); mFaces = detector.detect(frame); // detector.release(); } } }); 。这将提供与您需要授予适当权限的某个用户相关的ResourceResolver。 &#39;服务&#39;之间的映射。和&#39;用户/群组&#39;在OSGi配置中完成。

或者,要检查此(访问权限)是否确实是您的问题,您可以更轻松地使用不需要进行任何配置更改的已弃用的ResourceResolverFactory::getServiceResourceResolver。我建议仅将其用于检查生产代码。

然后你应该通过以这种方式获得的resourceResolver获得所有必需的util类。