Hi Jacques,
You are most welcome.
For the complex examples , I will prepare it through this week.
For the error you got it's really not clear,
But I think its may be related to @ symbole,
Try download htmx file instead of using the unpkg site.
And  include it with the theme js files as normal.

Regards


On Fri, Nov 1, 2024 at 1:39 PM Jacques Le Roux <jacques.le.r...@les7arts.com>
wrote:

> Thanks Omar,
>
> Got this error in js console:
>
>     TypeError: Not enough arguments to XPathEvaluator.createExpression.
>          htmx< https://unpkg.com/htmx.org@2.0.3:1:23876
>          <anonyme> https://unpkg.com/htmx.org@2.0.3:1:10
>
> No ideas what's wrong. I used product as component. I put my patch at
> http://les7arts.com/htmx.patch
>
> BTW, someone know what has replaced https://paste.apache.org ?
>
> TIA
>
> Jacques
>
> Le 31/10/2024 à 15:25, Omar Abdullwahhab a écrit :
> > Sorry
> > 8. the java service
> > public class HtmxServices {
> >
> >      public static Map<String,Object> sayDate(DispatchContext
> > dispatchContext, Map<String,Object> context){
> >          var result = ServiceUtil.returnSuccess();
> >          result.put("currentDate", LocalDateTime.now().toString());
> >          return result;
> >
> >      }
> > }
> >
> >
> > On Thu, Oct 31, 2024 at 5:07 PM Omar Abdullwahhab <
> > omar.abdullwah...@gmail.com> wrote:
> >
> >> OK
> >> For you not to waste your time,
> >> Just a quick example
> >> I have made
> >> 1. first insert the following htmx link in the Header.ftl in the theme
> you
> >> are using
> >> <script src="https://unpkg.com/htmx.org@2.0.3";></script>
> >> 2. Controller.xml
> >>
> >> <!-- Request Mappings -->
> >> <request-map uri="main">
> >>      <security https="true" auth="true"/>
> >>      <response name="success" type="view" value="main"/>
> >> </request-map>
> >>
> >> <request-map uri="sayDate">
> >>      <security https="true" auth="true"/>
> >>      <event type="service" invoke="sayDate"/>
> >>      <response name="success" type="view" value="sayDate"></response>
> >> </request-map>
> >> <!-- View Mappings -->
> >> <view-map name="main" type="screen"
> page="component://ofbizFreemarker/widget/OfbizFreemarkerScreens.xml#main"/>
> >>
> >> <view-map name="sayDate" type="ftl"
> page="component://ofbizFreemarker/templates/say_date.ftl"/>
> >>
> >> 3. services.xml
> >>
> >> <service name="noSyntaxError" engine="interface">
> >>      <description>
> >>          Dummy service to prevent empty files and syntax error - Remove
> when the 1st real service will be added here
> >>      </description>
> >> </service>
> >>
> >> <service name="sayDate" engine="java"
> >>           location="org.apache.ofbiz.ofbizfreemarker.HtmxServices"
> >>           invoke="sayDate">
> >>      <attribute name="currentDate" type="String" mode="OUT"
> default-value=""/>
> >> </service>
> >>
> >> 4. XXXScreens.xml
> >>
> >> <screen name="main">
> >>      <section>
> >>          <actions>
> >>              <set field="headerItem" value="main"/><!-- this highlights
> the selected menu-item with name "main" -->
> >>          </actions>
> >>          <widgets>
> >>              <decorator-screen name="OfbizFreemarkerCommonDecorator"
> location="${parameters.mainDecoratorLocation}">
> >>                  <decorator-section name="body">
> >>                      <platform-specific>
> >>                          <html><html-template
> location="component://ofbizFreemarker/templates/Main.ftl"/></html>
> >>                      </platform-specific>
> >>
> >>                  </decorator-section>
> >>              </decorator-screen>
> >>          </widgets>
> >>      </section>
> >> </screen>
> >>
> >> 5. Main.ftl
> >>
> >> <button hx-get="<@ofbizUrl>sayDate</@ofbizUrl>"
> hx-target="#responseDiv" hx-swap="outerHTML">
> >>     Say Date
> >>   </button>
> >>
> >>   <div id="responseDiv">
> >>
> >>   </div>
> >>
> >> 6. say_date.ftl
> >>
> >> <div id="responseDiv">
> >> <h4>${requestAttributes.currentDate}</h4>
> >> </div>
> >>
> >> 7. That's all.
> >>
> >>
> >>
> >>
> >> On Thu, Oct 31, 2024 at 4:42 PM Jacques Le Roux <
> >> jacques.le.r...@les7arts.com> wrote:
> >>
> >>> Great,
> >>>
> >>> That sound to confirm again
> >>> https://lists.apache.org/thread/pxoq4484jws79jvw3ct501nt3t26hlyw
> >>>
> >>> We really need to seriously investigate now...
> >>>
> >>> Jacques
> >>>
> >>> Le 31/10/2024 à 14:25, Omar Abdullwahhab a écrit :
> >>>> Hi All.
> >>>>
> >>>> Today I was playing around the client side in OFBIZ,
> >>>> I'm actually not a fan of JS or its frameworks.
> >>>> I tried making a test to replace it with htmx.
> >>>> It was very good and easy to integrate with OFBiz and Freemarker.
> >>>> Please have a look
> >>>> https://htmx.org/docs/
> >>>> I am sure it will be a proven technology for OFBiz.
> >>>> Regards
> >>
> >> --
> >> Omar Abu-Arab
> >> Java Engineer
> >>
> >>



-- 
Omar Abu-Arab
Java Engineer

Reply via email to