0

私は Oracle Endeca Custom Visualization のドキュメントに従い、Eclipse でカスタム ポートレットを開発することから始めました。同じものを endeca-portal にデプロイすると。コンポーネントには何も表示されません。しかし、 view.jsp に長いコードが表示されます。ポータルに Hello メッセージを表示するのを手伝ってくれる人がいますか? そして、そこにすでに存在するものは何ですか?

<div class="eid-simple-portlet">
<table>
    <thead>
    <tr>
        <th><edisc:getMessage messageName="table-heading.data-set"/></th>
        <th><edisc:getMessage messageName="table-heading.record-count"/></th>
        <th><edisc:getMessage messageName="table-heading.attribute-count"/></th>
        <th><edisc:getMessage messageName="table-heading.sample-refinement"/></th>
        <th><edisc:getMessage messageName="table-heading.sample-keyword-search"/></th>
    </tr>
    </thead>
    <tbody>     
    <c:forEach items="${viewModel.dataSetMap}" var="mapEntry" varStatus="dsLoop">
        <c:set var="dataSetKey" value="${mapEntry.key}" />
        <c:set var="dataSetInfo" value="${mapEntry.value}" />

        <%-- set up search action URL --%>
        <portlet:actionURL var="searchURL" name="${filterActionName}">
          <portlet:param name="${dataSetKeyParam}" value="${dataSetKey}"/>
          <portlet:param name="${searchKeyParam}" value="${dataSetInfo.sampleSearchKey.key}"/>
          <portlet:param name="${searchTermParam}" value="${sampleSearchTerm}"/>
        </portlet:actionURL>

        <%-- set up refinement action URL if the sample exists --%>
        <c:if test="${not empty dataSetInfo.sampleRefinement}">
            <portlet:actionURL var="refineURL" name="${filterActionName}">
              <portlet:param name="${dataSetKeyParam}" value="${dataSetKey}"/>
              <portlet:param name="${refinementNameParam}" value="${dataSetInfo.sampleRefinement.name}"/>
              <portlet:param name="${refinementSpecParam}" value="${dataSetInfo.sampleRefinement.spec}"/>
            </portlet:actionURL>
        </c:if>

        <tr <c:if test="${dsLoop.count%2==0}">class="even"</c:if>>
            <td>${dataSetInfo.displayName}</td>
            <td><fmt:formatNumber type="number" value="${dataSetInfo.recordCount}"/></td>
            <td><fmt:formatNumber type="number" value="${dataSetInfo.attrCount}"/></td>
            <td>
                <c:choose>
                <c:when test="${not empty dataSetInfo.sampleRefinement and not empty refineURL}">
                    <a href="${refineURL}">
                        <edisc:getMessage messageName="refine-by-link-text">
                            <edisc:param value="${dataSetInfo.sampleRefinement.name}"/>
                            <edisc:param value="${dataSetInfo.sampleRefinement.label}"/>
                        </edisc:getMessage>
                    </a>
                </c:when>
                <c:otherwise>
                    <edisc:getMessage messageName="refinement-sample-not-available"/>
                </c:otherwise>
                </c:choose>     
            </td>
            <td>
                <c:choose>
                <c:when test="${not empty dataSetInfo.sampleSearchKey}">
                <a href="${searchURL}">
                    <edisc:getMessage messageName="search-for-link-text">
                        <edisc:param value="${dataSetInfo.sampleSearchKey.displayName}"/>
                        <edisc:param value="${sampleSearchTerm}"/>
                    </edisc:getMessage>
                </a>
                </c:when>
                <c:otherwise>
                    <edisc:getMessage messageName="search-sample-not-available"/>
                </c:otherwise>
                </c:choose>
            </td>
        </tr>
    </c:forEach>
    </tbody>
</table>
4

1 に答える 1

0

Endeca カスタム ポートレット。

これは、サンプル コードを使用した後に得られたサンプル出力です。これは、liferay フレームワークを使用して開発されています。したがって、これらのカスタム コンポーネントを開発するための liferay フレームワークを学習することが役に立ちます。いくつかのメジャー マイナー例外が原因で、以前にエラーが発生していました。コンパイルする適切な jdk バージョンを選択すると、問題が解決しました。

于 2014-11-07T10:12:34.033 に答える