屋外で Web スクリプト内の現在のユーザー名を取得する方法はありますか?? 私は Web スクリプトを呼び出しており、彼がログインした現在のユーザー名とパスワードにアクセスしたいと考えています。ここに私の記述子があります:
<webscript>
  <shortname>Save Document </shortname>
  <description>Save description</description>
  <url>/alfresco/save</url>
  <format default="">argument</format>
  <family>Active document</family>
</webscript>
私のウェブスクリプトコード:
public void execute(WebScriptRequest req, WebScriptResponse res)
            throws IOException {
        String nodeRefString = null;
        try {
            nodeRefString = req.getParameter("nodeRef");
            if(nodeRefString != null && !nodeRefString.isEmpty()) {
                AuthenticationUtil.runAs(new RunAsWork<String>() {
                    public String doWork() throws Exception {
                        String userName = AuthenticationUtil.getFullyAuthenticatedUser();
                        System.out.println("user name =" + userName);
                        if(personService != null) {
                            System.out.println("personService initialized successfully");
                            NodeRef personNode = personService.getPerson("mahesh");
                            System.out.println("password =" + nodeService.getProperty(personNode, ContentModel.PROP_PASSWORD));
                        } else {
                            System.out.println("person service is null");
                        }
                        NodeRef nodeRef = new NodeRef(nodeRefString);
                        setNodeRef(nodeRef);
                        setFileName((String) nodeService.getProperty(nodeRef,ContentModel.PROP_NAME));
                        return null;
                    }
                }, AuthenticationUtil.getSystemUserName());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
認証タグを Web スクリプト記述子に追加する必要がありますか?? AuthenticationUtil.getFullyAuthenticatedUser(); の両方を試しました。および AuthenticationUtil.getRunAsUser()。どちらもユーザー名として「system」を返しています。
どんな助けでも大歓迎です。
ありがとう