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