OFBiz

Monday September 18, 2017

Apache OFBiz News - August 2017

Apache OFBiz News August 2017

Welcome to our regular monthly round-up of OFBiz news. This month we have news about a new documentation effort to produce a Business Process Reference Guide, our new look OFBiz project website goes live, we discuss improving the look and feel of our blog, and we welcome two new committers.

New OFBiz Website

In previous updates, we have mentioned the work happening to update our existing website. It has been in progress for a while but during August we are proud to announce that our new OFBiz website went live. The new site includes our updated logo and has a totally new look and feel that we hope our community and potential OFBiz users will like.

A key focus was on making it easy for developers and non-developers to get started as well as providing links to key information. Since it went live, we have been implementing minor changes and feedback from the community and has been very positive. We will be looking to add additional pages such as an OFBiz Service Providers list and more FAQs in the future.

Thanks very much to everyone that contributed to the website in any way and especially Kenneth Paskett for his graphic design, Deepak Dixit and the Apache Infrastructure team for their help in moving the site live.

Improving our Blog Template

Following on from the work done on creating a new logo and website, this month the community discussed improving our blog template

Kenneth Paskett who did the graphic work for the logo and the new website has come up with a draft idea for a layout so please feel free to join the discussion and tell us what you think.

OFBiz Business Process Reference Guide

Another discussion that came up this month was about creating an OFBiz Business Process Reference Guide. Community feedback was very positive and some work has already started. The aim is to provide a process overview for each area including activity diagrams and also incorporate user stories, use cases and test cases.

An example of the work for the Sales Order Management can be found at the links below: The Parent page for all these documents can be found here.

Thanks very much to contributors Shivangi Tanwar, Sonal Patwari, Priya Sharma, Humera Khan, Renuka Srishti, Jagpreet Kaur and also Pranay Pandey for working on this important documentation effort. We hope that this set of documentation will greatly help potential OFBiz users and evaluators.

New OFBiz Committers

During August the Project Management Committee (PMC) invited two new Committers, Rishi Solanki and Akash Jain. Congratulations to both Rishi and Akash and thank you for all your contributions to the project.

New features and improvements

Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:

Framework

  • Replace fields with id-ne, id-long-ne and id-vlong-ne by id, id-long and id-vlong respectively which are not primary keys (OFBIZ-9355)
  • Remove unnecessary field types, also removed -ne field references from code. (OFBIZ-9351)
  • Remove the never implemented deleteParty (pre Apache era) (OFBIZ-9556)
  • Refactor EntityListIterator (OFBIZ-9549)
  • OEM Party Id field should have lookup on Edit Product page (OFBIZ-9368)
    • Removed manufacturerPartyId from Product entity
    • Removed its relations from view entities namely GoodIdentificationAndProduct
    • Removed it from forms EditProduct (Product), SearchInventoryItemsParams (EditFacilityInventoryItems screen in Facility) and SearchInventoryItemsDetailsParams (ViewFacilityInventoryItemsDetails screen in Facility)
  • Bugfixes found by FindBugs
    • Package org.apache.ofbiz.base.lang (OFBIZ-9564) Implemented method hashCode() because method equals() was implemented, Changed Exception to RuntimeException because no exception was thrown and the only occurring exception could be a runtimeexception
    • Package org.apache.ofbiz.base.lang.test (OFBIZ-9565) Fixes some diamond operators
    • Package org.apache.ofbiz.base.concurrent (OFBIZ-9562) Fixes some diamond operators, Implementes equals method to fix potential problems, Implementes hashCode method because equals method was implemented, Implemented timeDiff method to keep the code DRY
    • Package org.apache.ofbiz.base.container (OFBIZ-9563) Fixes some diamond operators, deleted multiple unnecessary nullchecks, added nullcheck, deleted multiple unnecessary else-blocks
    • Package org.apache.ofbiz.base.config (OFBIZ-9566) The protected fields were set to private since the class is not extended anywhere. If they need to be accessed in the future, getter that return an unmodifiable version should be implemented (Collections.unmodifiableXXX). Refactor: Uses multi exceptions catch (explicitly to not catch, hence somehow swallow, RuntimeException), Uses return instead of else when appropriate, Extracts a getLoader() handy method, Removes a useless thrown exception in invalidateDocument(), Removes a useless Document cast
    • Package org.apache.ofbiz.base.metrics (OFBIZ-9567) Changes a division with two long variables whose result was casted into a double, Now it performs a proper double division
    • Package org.apache.ofbiz.accounting.thirdparty.gosoftware. (OFBIZ-9486)
    • Package org.apache.ofbiz.accounting.finaccount (OFBIZ-9504) FinAccountPaymentServices.finAccountPreAuth(DispatchContext, Map) A value is checked here to see whether it is null, but this value can't be null because it was previously dereferenced and if it were null a null pointer exception would have occurred at the earlier dereference.
    • Package org.apache.ofbiz.accounting.ledger. (OFBIZ-9505)
    • Packages org.apache.ofbiz.accounting.period and org.apache.ofbiz.accounting.tax. (OFBIZ-9527)
    • Package org.apache.ofbiz.base.component. (OFBIZ-9560)
  • Manage deprecated service in the ModelService, When removing a service a new XML element <deprecated> can be added (OFBIZ-9558)
  • Connect OFBiz to a read only database, Add a DAO helper class to use a datasource as readonly. (OFBIZ-6401)
  • Deprecated Methods
    • OrderChangeHelper (OFBIZ-9570) The methods abortOrderProcessing and releaseInitialOrderHold have been deprecated since the workflow engine has been replaced by the ECA.
  • Replace unnecessary local variable ZERO with BigDecimal.ZERO. (OFBIZ-9529)
  • ServiceSemaphore: Check for Transaction before suspending it in dbWrite(...) (OFBIZ-9401)
  • Replace BigDecimal.ROUND_* by RoundingMode.* (OFBIZ-9571)
  • GenericServiceJob.failed(Throwable) avoid logging stacktraces for non technical service semaphore exceptions (OFBIZ-9400)
  • New UtilMisc method collectionToString(...) safely building a String with the given collection and delimiter (OFBIZ-9397)
  • Required field indicator (*) is missing on some forms (OFBIZ-9579)
  • Required Field Indicator (*) / Form Validation is missing on Create New Data Source Form (OFBIZ-7462)
  • Check for white spaces around the name of a form field when updating a form (OFBIZ-9306)
  • Enable/Disable JMS via configuration (OFBIZ-4454)
  • Required Field Indicator (*) / Form Validation is missing on Create New Data Source Form (OFBIZ-7462)
  • Required field indicator (*) is missing on create contact list form (OFBIZ-9587)
  • Client side validation is missing in quick create accounting transaction process (OFBIZ-9583)
  • EmailServices.sendMailFromScreen improved to take multiple attachments with appropriate type along with several email fixes. (OFBIZ-9395)
    • it enables to add BCC adress(es) to service OrderServices.sendOrderNotificationScreens to oversteer ProductStoreEmailSetting of BCC the same was as for CC.
    • a method UtilValidate.isEmailList(String) is added to check a comma separated list of email addresses, used for example to check the String passed to the new BCC field for an Order-Notification.
    • there are improvements in EmailServices.sendMailFromScreen. The attachment type of MailAttachments is now not only .pdf but depends on the specific file. This has not been the case before - the mime type was always hard coded as .pdf. The same goes for the bodyPart content-type which is now set to the passed content type or the default text/html type. Before this was also always set to text/html. Additionally, an attachment that has the mime-type text/plain is not rendered with the fop-renderer anymore but with a simple text-renderer. Therefore it is possible to send an CSV file as attachment now.
  • Use auto-attributes in ProductFeatureCategory CRUD services (OFBIZ-9608)
  • Add explicit UEL (unified expression language) function to resolve a label, instead of calling a static worker via groovy (OFBIZ-9617)
  • Manage life span of marketing related entites (OFBIZ-9550) Add life span attributes (fromDate, thruDate) on entities : MarketingCampaignPrice, MarketingCampaignPromo, MarketingCampaignRole Complete related CRUD service with align service name on the best pratice for consistency. The previous service name has been set as deprecated :
    • addPromoToMarketingCampaign replace by createMarketingCampaignPromo
    • removePromoFromMarketingCampaign replace by deleteMarketingCampaignPromo
    • addPriceRuleToMarketingCampaign replace by createMarketingCampaignPrice
    • removePriceRuleFromMarketingCampaign replace by deleteMarketingCampaignPrice
  • common-theme upload (OFBIZ-9138) Migrate themes to common-theme component.
  • Move all data in applications to the datamodel component. (OFBIZ-9501)(content, workeffort, product)
  • User should be notified with success message on adding note for party in party component. (OFBIZ-9538)
  • Wrong success message after creating lead in sfa component. (OFBIZ-9518).
  • Use from-field pattern instead of value=dollor pattern in 'set' element Apply slightly modified patch from jira issue, fixed some typo (OFBIZ-9607)
  • When creating New Lead, Lead Source should be associated with the Lead. (OFBIZ-9588)
  • Refactor OFBiz containers and remove StartupCommandToArgsAdapter (OFBIZ-9441)
    • Fully refactor the EntityDataLoadContainer
    • Fully refactor the TestRunContainer
    • Remove most old documentation and commented out code where applicable
    • Delete the StartupCommandToArgsAdapter as it is no longer needed
    • Create a new feature in which OFBiz by default fails if any data file fails to load. This can be overridden by passing a flag called "continue-on-failure" e.g. ./gradlew "ofbiz --load-data continue-on-failure"
    • Add a new property to --test called "loglevel" (old code but working properly)
    • Add many new properties to the --load-data command including repair-columns, try-inserts, maintain-txs, etc
    • Update the documentation output of ./gradlew "ofbiz --help" to incorporate the new mentioned properties
    • Refactor README.md to incorporate the changes to the gradle commands for both "-load-data" and "-test" properties. Also remove the gradle GUI documentation as it is now deprecated.
    • Also refactor README.md in other locations to cleanup and make it more consistent. This icludes moving long notes into new sections and reducing the verbosity of the security header. Furthermore, created a new header called Miscellaneous documentation to house the newly created sections

Plugins

  • Replace fields with id-ne, id-long-ne and id-vlong-ne by id, id-long and id-vlong respectively which are not primary keys (OFBIZ-9355)
  • Removed ne references from BirtUtil class file (OFBIZ-9351)
  • OEM Party Id field should have lookup on Edit Product page (OFBIZ-9368)
  • Removed duplicate field type entry from BirtUtil class file.
  • Change all <set> screen and script groovy that call widget.properties values replaced by call to modelTheme (OFBIZ-9138)
  • Use from-field pattern instead of value=dollor pattern in 'set' element Apply slightly modified patch from jira issue, fixed some typo (OFBIZ-9607)

Bugfixes

Functional and technical bugfixes:

Framework

  • Bug SQL Count Distinct command in GenericDAO.java (OFBIZ-5701)
  • Connect OFBiz to a read only database, Escape null pointer exception stack trace when the helper return no value (OFBIZ-6401)
  • Bugfixes found by FindBugs
    • Package org.apache.ofbiz.accounting.payment (OFBIZ-9529)
  • Missing fieldInfo when call constructor for ModelFormField Password, File and Lookup (OFBIZ-9577)
  • Collection added to itself (OFBIZ-9578)
  • LabelManager doesn't search labels in .groovy files (OFBIZ-8153)
  • Ecommerce login/logout don't work properly for trunk and stable (OFBIZ-9240) To fix this problem the code which copies all the attribute from parent request to redirect request was removed because this thing is already taken care of in the RequestHandler.
  • Consistency and Readability improvements
    • for view-map tag (OFBIZ-9110) Consistency on the attribute order for view-map element as : name, type, page
    • for make-value tag (OFBIZ-8986) Consistency on the attribute order for make-value element as : entity-name, value-field
  • clean marketing-entitymodel.xml file with remove all field empty body xml (OFBIZ-9550)
  • clean (second pass) marketing-entitymodel.xml file to realign correctly the file format (OFBIZ-9550)
  • MimeType displayed in HTML encoded pattern (OFBIZ-9621)
  • Correct all Theme.xml file fo the theme definition with the good xmlns (OFBIZ-9138)
  • Updated deprecated element type set mixed as true in services.xsd as we are using it in mixed mode. Also moved deprecated sequence after namespace.Found this issue while reading log, this will fix those warnings.
  • Warning related to duplicate type assignment for widget attribute in theme.xsd file
  • Removed unused attribute sequenceId from property element, also fix position value from topLeft to top-left as per dtd
  • Logo image was missing in tomahawk theme.
  • Removed the visualThemeSetId for common theme. Now common theme will be display on backend visual theme popup. (OFBIZ-9138)
  • NullPointerException when calling EntityQuery#getFieldList if distinct is not explicitly set(OFBIZ-9624)
  • Correct library ftl call to render the email body, add possibility to call the ThemeFactory.resolveTheme() with empty request if the visualTheme normaly present on the service context isn't found, so we return the default theme define in general.properties (OFBIZ-9138)
  • Lead Profile URL not working properly in SFA. (OFBIZ-9512)
  • Improvements in LabelReferences class (OFBIZ-9623)
  • LabelManager doesn't search labels in all elements in xml (OFBIZ-9606) Currently, label manager for xml search only for fail-property elements in xml files, it should also search for the property-to-field, default-message element in xml files.
  • Updated images component reference path, as images component were removed and now these files are part of common-theme componnet.
  • Rename the URL for gradle tab-completion to the correct official one
  • Unable to create Customer (OFBIZ-9649)
  • Groovy MissingPropertyException related to theme.(OFBIZ-9657)
  • Party Communication Screen is broken (OFBIZ-9670). Issue was due to missing closing quotes in from-field attribute of set field tag.
  • Typo introduced in r#1806326 (OFBIZ-9607)
  • Jgrowl lost configuration with common-theme (OFBIZ-9138)
  • Lookup property showDescription not present in common-theme (OFBIZ-9138)
  • HtmlFormMacroLibary.ftl contains direct call to widget.properties (OFBIZ-9138) Instead of using the properties on the current theme, some ftl macro present in the file HtmlFormMacroLibary.ftl used a direct call to widget.properties.

Plugins

  • Consistency and Readability improvements
    • for view-map tag (OFBIZ-9110) Consistency on the attribute order for view-map element as : name, type, page
    • for make-value tag (OFBIZ-8986) Consistency on the attribute order for make-value element as : entity-name, value-field
  • Correct library ftl call to render the email body (OFBIZ-9138) add possibility to call the ThemeFactory.resolveTheme() with empty request if the visualTheme normaly present on the service context isn't found, so we return the default theme defined in general.properties
  • Updated images component reference path, as we removed images component and now these files are part of common-theme component.
  • Used semicolon instead of comma to terminate css statement
  • HTML encoded path of image is showing on product detail page, applied slightly modified patch from jira issue.(OFBIZ-9654)
  • Stack trace on E-commerce Home page (OFBIZ-9652) Updated common template path as now these common template moved to common-theme component.
  • Unable to create Customer (OFBIZ-9649)

Monday August 14, 2017

Apache OFBiz News - July 2017

Apache OFBiz News July 2017

Welcome to our regular monthly round-up of OFBiz news. This month we have news about the end of life for two unreleased branches, the work going on to re-organise OFBiz application data, we start a discussion on ways to improve the OFBiz user interface, one of our contributors creates an OFBiz sanity check and new contributors joined the OFBiz community.

End of Support for Unreleased Branches 14.12 and 15.12

When the project changed the build system from Ant to Gradle, two unreleased branches 14.12 and 15.12 had already been created. These unreleased branches still use Ant as the build system and contain the complete codebase including the specialpurpose components. The community agreed to keep these branches available for developers and service providers so that they could continue to support their client base.

The support period for backporting bug fixes to these unreleased branches was extended to be longer than normal to give users more time to transition to 16.11. The deadline for supporting 14.12 and 15.12 was the end of July 2017.

This means that bug fixes will not automatically be backported to these unreleased branches and will be handled on a case by case basis. You will still be able to get help, advice and support on the mailing lists regarding these branches but we will now be encouraging users to look at upgrading to the 16.11 release.

Re-Organising OFBiz Application Data

This month there was a detailed discussion about simplifying the OFBiz data files and making it easier to understand the dependencies. A lot of setup is done via the demo data files and when an issue occurs in data loading, it can sometimes be difficult to debug and track down.

By re-organising and standardising the structure of the folders and files, we can also review and clean up any dependencies. A Jira has been created and we are actively looking for volunteers from the community to help with this effort. If you would like to help out with this task then please add your patch or comments to the Jira issue.

Improving the OFBiz User Interface

A big discussion topic this month was related to improving the OFBiz user interface. This subject has also been raised in the past but now there is a new effort focussed on getting something done that could really improve the user's perception of OFBiz.

Nicolas Malin is currently doing some work on this and we look forward to seeing the result.

OFBiz Sanity Test

Is OFBiz a little crazy? Probably not, but during this month one of our OFBiz contributors Sanjay Yadav created an OFBiz Sanity Check document to help users run through a list of basic OFBiz tests. Details of Sanity Test document can be found on the wiki. Thanks very much to Sanjay for putting this together and sharing it with the community.

New OFBiz Contributors

During the month of July-2017, OFBiz community welcomed 22 new open source contributors who filed ICLA to ASF. OFBiz contributors list can be found here.

New features and improvements

Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:

Framework

  • Fix defects in the payment package reported by the code analysis tool FindBugs (OFBIZ-9451) The patch contains miscellaneous improvements to the code base such as setting variables to final to avoid malicious changes from outside code, using stringBuilders for efficiency, removing unnecessary null queries, and exchanging inefficient Boolean constructers with available functions.
  • Replace hard-coded instances of "IN" with ModelService.IN_PARAM (OFBIZ-9434)
    • Add new constraints for "INOUT" modelservice param.
    • Update remaining occurrences for hard-coded "IN", "OUT" and "INOUT" (OFBIZ-9434)
  • Improve further inconsistent String Comparisons (OFBIZ-9254)
  • Move certain uiLabels from ProductUiLabels.xml to CommonEntityLabels.xml (OFBIZ-9408) Adapt ProductUiLabels to the pattern of other labels of the "Uom" entity: <entityName>.<fieldName>.<PrimaryKey>.
  • Use serviceUtil() in place of hard-coded error/success messages (OFBIZ-9466)
  • Set autocomplete to "off" for all the password fields to improve security (OFBIZ-9471)
  • Convert AgreementServices.xml from mini-lang to groovyDSL (OFBIZ-9460)
  • Correct the Service implementation of deletePayHistory (OFBIZ-9111) Use entity auto for deletePayHistory service, also add new service to expirePayHistory and call expirePayHistory from UI.
  • Remove cancelAgreement service and add expireAgreement entity-auto service (OFBIZ-9480)
  • Improve EntityQuery.queryOne() function to resolve a record by auto matching the primary key on a given context (OFBIZ-9447) This improvement simulates the minilang element <entity-one entity-name=Product value-name=product/> to help the minilang migration to groovy.
    • With new groovyDSL for queryOne, simplify groovy rate amount services
  • Use FlexibleLocation.resolveLocation() instead of hard-coded path (OFBIZ-9479)
  • Improve groovyDSL: call makeValidContext when running a service (OFBIZ-9523) When calling a groovy service, all paramters must be checked for the service call. The Improvement simplifies this dsl with an automatic parameters check so that the context can be directly specified.
  • Improvements in entity definitions and services (OFBIZ-8273)
  • Move all data in applications to the datamodel component (OFBIZ-9501) This is the first of many more commits to move all data from applications to the data model component to centralize both entity definitions and the data supporting it. This commit partially moves data from PartyTypeData.xml file to the newly created central file PartySeedData.
  • Integrating google phone number library for validating telecom numbers (OFBIZ-9358)

Plugins

  • Improve inconsistent String Comparisons (OFBIZ-9254)
    • in ftl-file of the ecommerce plugin
    • in ftl-file of the ebay plugin
  • Set autocomplete to "off" for all the password field to improve security (OFBIZ-9471)

Bugfixes

Functional and technical bugfixes:

Framework

  • ContentWorker#findAlternateLocaleContent does not use fallback locale. (OFBIZ-9445) If no alternate locale content for the requested locale is found, search for an alternate locale content with the locale configured in general.properties at locale.properties.fallback. If this one isn't found either we can still return the original content.
  • Missing secure port in URLs when sending mails (OFBIZ-9449) This issue came up after OFBIZ-9206 where the value of port.https in url.properties was removed.
  • Required check missing for supplier product id and last price on AddProductSupplier page (OFBIZ-9455)
  • Wrong price overriding when adding items to cart (OFBIZ-7263) Changing the item quantity in cart set the flag isModifiedPrice true which conflicted with the updatePrice condition and hence price recalculation was not being triggered.
  • Adding a gift certificate in purchaseOrder throws exception (OFBIZ-9438)
  • Accounting quantity transfer is zero while transferring inventory from one facility to another (OFBIZ-9464)
  • Incorrect MimeTypeId value shown if the form is submitted (OFBIZ-9344)
  • UI issue in ATP/QOH table on Create Purchase Order screen (OFBIZ-9468)
  • "ACCTG trans entries pdf" link on invoiceOverview does not work (OFBIZ-6774) This is a link to a birt component which was not included in the 13.07 release.
  • Insufficient checking of checkOutPaymentId in CheckOutEvents.getSelectedPaymentMethods (OFBIZ-9404)
  • WorkEffort shows error on adding party with specific role to Timesheet (OFBIZ-9317)
  • The copyAgreement service fails (OFBIZ-9143)
  • Order page shows widget exceptions (OFBIZ-9481)
  • Uploading images at catalog/control/addImageForProduct does not work (OFBIZ-9259) Delegator was fetched from the context instead of the DispatchContext and thus was throwing NPE while running the EntityUtilProperties.getPropertyValue().
  • Adding condition in price rule on "Role Type" showing incorrect result (OFBIZ-7275) The issue exists because in roleTypeList there are multiple occurrences of substring "CUSTOMER". The existing check was just checking the occurrence of a substring in the string and found this value more than once in the list so the last option gets selected. Applied equality check to find the exact match.
  • MRP generates duplicate requirements when items are initially under minimum quantity and have with pending approved purchase orders. (OFBIZ-9526) With this change the requirements to replenish the inventory up to the minimum stock quantity is generated, if needed, only when the first demand event is processed or at the end.
  • Order contact mechs are not copied over while re-ordering an order (OFBIZ-9253)

Plugins

  • Wrong repository links on FormWidgetExamples page (OFBIZ-9494) Update the URL path and instead of changing it at all the places, introduced a variable.
  • Uploading content to a product email in SCRUM component is not working (OFBIZ-9524) Fix typo in form name in the javascript function on the button.
  • Error on "Edit backlog" for a product in SCRUM component (OFBIZ-9531) Add missing import for GenericEntityException and define customer and items list at right place to make it available.

Tuesday July 11, 2017

Apache OFBiz News - June 2017

Apache OFBiz News June 2017

Welcome to our regular monthly round-up of OFBiz news. This month we have news about yet another OFBiz release, our new website is close to being finished, we discover what 11 years of OFBiz development looks like, we look for volunteers to help us improve our code using Code Analysis tools and OFBiz gets mentioned in the ASF annual report.

Apache OFBiz 16.11.03 Released

During this month the community announced the release of 16.11.03. The new release consolidates all work done since the previous release in November last year. The release file can be downloaded following the instructions in the OFBiz Downloads page. Please refer to the Release Notes for more details of the changes introduced with this new version. Thanks very much to Scott Provost for highlighting a bug in our recent 16.11.02 release and to the OFBiz community for working together to fix the reported problem and getting the new release out so quickly to users.

Initial Draft of New OFBiz Website

Our community has been looking at and talking about changing our project website for quite a while. After some discussions on our mailing lists the structure was agreed and an initial template draft has been loaded into our code repository. We would like to finalise the site and hopefully change over to using the new site over the next month. If you would like take a look at a preview of the work done so far then please use the link below:

Draft OFBiz Website page.

We hope that the new website will be easier to navigate and will also align with our new OFBiz project logo.

Removing OFBiz Snapshots

For a long while, folllowing the way other ASF projects do, the OFBiz project has been providing nightly snapshots of the latest codebase. This was setup so that developers of our community could download and use the latest updates for the branch releases. Providing these snapshots takes time and effort and does not add much, if any, in the case of OFBiz. And we have found that this is almost not utilised so has now been discontinued. It's not much different from using the SVN repository to download (check out) and it's the same after to run things with Ant or Gradle. If you are annoyed by the .svn folder created by the check out, simply drop it or use svn export. But that should not even be an issue, most of the time it's even convenient because you can then easily update, compare, etc., when you want...

OFBiz Development History on Gource

During this month Gource was mentioned as a way to visualise the development of the OFBiz project. Gource is a tool that displays software projects as an animated tree. Various directories are shown as branches and individual files are displayed as leaves. Also details of the developers who have worked on or updated the branches and leaves can be seen over time through an animation sequence. Thanks to Jacques Le Roux for highlighting the tool and also to Michael Brohl for generating a history of 11 years of OFBiz development from 2006 until 2017. The Gource animation Michael generated is available on Youtube via the following link

OFBiz through the years

We hope our community enjoys watching the evolution of the project.

Using Code Analysis Tools to Improve OFBiz

If you are interested in helping improve OFBiz but a little unsure how to get started then defects reported by code analysis tools could help.

A while ago we had a discussion on the development mailing list mentioning that we could help improve and clean up our codebase by running Code Analysis tools on our codebase and using the reports as a guide to provide patches. Doing this can be a good way to get started with the project that also delivers great benefits.

Details of the discussions and instructions for how to get started can be found at the following thread Call to action: fixing defects reported by code analysis tools.

Everyone is welcome to help out so please feel free to ask for any advice or additional information on our development mailing list

OFBiz and the ASF Annual Report

In June the Apache Software Foundation published its regular Annual Report.. If you take a look at the report, you will see that on page 25 our OFBiz development list has been listed as one of the most active Apache project mailing lists and on page 26 Deepak Dixit is listed as one of the top 5 issue closers!

It is great to see OFBiz so active and also congratulations to Deepak.

New features and improvements

Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:

Framework

  • Improve closing of Objects for the case of an exception In case of an exception after the EntityListIterator or Writer creation and before it's closed, the EntityListIterator or Writer remains in memory. Improve by using try-with-ressources where possible.
  • Update geo data for India (OFBIZ-9406) India currently has 29 states and 7 Union Territories.
    • Update geoTypeId for 7 union territories from STATE to TERRITORY
    • Correct several geoName territory names
    • Add data for new state Telangana
  • Rename Gradle task "loadDefault" to "loadAll" (OFBIZ-9411) As of OFBiz 16.12 the Gradle task has the new name and the documentation, such as README.md, has been adjusted accordingly. Discussion on this topic: https://s.apache.org/xjFj
  • Add numericCode for Currency UOM (OFBIZ-9409) The three-digit numeric code is useful when currency codes need to be understood in countries that do not use Latin scripts and for computerised systems.
    • Set 3 digit numeric code the same as the numeric country code where possible.
    • Update some old currency UOM, as uomId has been updated. (https://www.iso.org/iso-4217-currency-codes.html)
    • Removed unused entity uiLabels for removed currency UOM (OFBIZ-9413)
  • Convert RateServices.xml from miniLang to groovyDSL (OFBIZ-9381)
  • Refactor and Improve Code for the following:
    • CatalinaContainer (OFBIZ-9392)
    • createPlugin task in Gradle script (OFBIZ-9436)
    • UtilMisc.toMap(), toList() and toSet() (OFBIZ-9393)
    • Several file names that did not adhere to OFBiz naming conventions (OFBIZ-9338)
  • Upgrade Groovy to 2.4.12 (OFBIZ-9430)
  • Upgrade Tomcat to 8.5.16 (OFBIZ-9437)

Plugins

  • Improve closing performFindResults.listIt for the case of an exception in 3 Scrum Groovy files (OFBIZ-9389) In case of an exception after the call to the performFind service and before it's closed, the EntityListIterator remains in memory. The solution is to use a try-catch-finally because Groovy does not have try-with-ressources blocks.

Bugfixes

Functional and technical bugfixes:

Framework

  • Report issues with the Wiki restructuring to this ticket: (OFBIZ-9416)
  • CostServices.xml#getProductCost fails currency conversion (OFBIZ-9387)
  • Simple method in shipment services not terminating on error condition (OFBIZ-9407) Add a <check-errors/> to the method.
  • RequestHandlerException on request link of Quote Profit page (OFBIZ-9386) Change the link to QuoteProfit from inter-app to simple. The Quote Price page has the same problem and solution (OFBIZ-9384).
  • Error when creating new blog article entry (OFBIZ-9373) Change mode of auto-attributes for service createElectronicText from INOUT to IN.
  • Unit test fails when "verbose" logging is turned on (OFBIZ-9305) Fix by temporarily disabling the verbose logging during the EntitySaxReaderTests.parse unit test.
  • CreateShipment code logic error (OFBIZ-9425) The service createShipment creates both sales and purchase shipment with workeffort. Details on the fix can be found in the ticket.
  • Cannot create a new GL Account (OFBIZ-9429) Change the service definition of createGLAccount so that it uses the pk attributes as OUT instead of INOUT. In this way, the glAccountId will be generated by OFBiz instead of being provided to the service.

Plugins

  • Screen broken on click ThirdPartyLogin, OAuth2GitHub, GitHubUser, OAuth2LinkedIn and LinkedInUser entities (OFBIZ-9390)
  • Birt plugin depends on example plugin (OFBIZ-9383) The BIRT demo data for flexible reports depends on the Example entity from the Example plugin. Put a gradle dependency on the Example plugin. If the Example plugin misses, the birt component can't build.
  • Error running the simple-method and groovy script in file QuickAnonCustomerEvents.xml (OFBIZ-9432) The script is unable to resolve the class CartItemModifyException. Add complete path to CartItemModifyException for Groovy and remove trailing semicolons. This error also concerns CustomerEvents.xml.
  • Lucene tests fail due to problems in the test data (OFBIZ-9439) The Lucene test data refers to the ownerContentId "CNTGIZMOS" which is not defined in the Lucene demo data. It was instead defined in the ecommerce demo data in the file DemoWebsitePublishPointData.xml. The data is rewritten so that it reflects the test code and adds missing content associations.

Monday July 03, 2017

[ANNOUNCE] Apache OFBiz 16.11.03 released

The Apache OFBiz community is pleased to announce the new release "Apache OFBiz 16.11.03".

Apache OFBiz® is an open source product for the automation of enterprise processes that includes framework components and business applications.

http://ofbiz.apache.org/.

"Apache OFBiz 16.11.03" is the latest and greatest release of OFBiz; for more details of the changes introduced with this new version please refer to http://ofbiz.apache.org/release-notes-16.11.03.html.

The release file can be downloaded following the instructions in the OFBizdownload page:

http://ofbiz.apache.org/download.html

The OFBiz community.

Friday June 09, 2017

Apache OFBiz News - May 2017

Apache OFBiz News May 2017

Welcome to our regular monthly round-up of OFBiz news. This month we have news about our new OFBiz release, we begin work on tidying up and re-structuring our wiki, work starts on improving end user documentation for our users and creating reports in OFBiz gets easier.

Apache OFBiz 16.11.02 Released

During this month the community announced the release of 16.11.02. This release consolidates all work done since the previous release in November last year. The complete OFBiz 16.11 series of releases is dedicated to the memory of Adrian Crum, OFBiz Committer and former PMC member who died last year.

The release file can be downloaded following the instructions in the OFBiz Downloads page.

Please refer to the Release Notes for more details of the changes introduced with this new version.

A big thank you to everyone from the community who was involved in helping to get the release done.

Re-structuring the OFBiz Wiki

A key discussion this month was about a proposal to re-organize and restructure our existing wiki. The main aim will be to get it clean and more user friendly so that people can easily navigate and locate the information they need. Over the years our wiki has evolved and has become a little cluttered, meaning that information is spread across several pages or even workspaces. This can make it difficult for the community to find what they need. Documentation is extremely important for new users so this effort is more than welcome.

Our wiki contains lots of useful information but also some older or outdated resources, so we need to work on tidying it up. An initial basic structure has been agreed upon as follows:
  • Apache OFBiz - How and where to start?
  • Documentation
  • Community
  • Developers
  • Apache Software Foundation
  • Wiki Attic
Please note that this structure has already been implemented as the main wiki navigation menu. The next focus will be on reviewing the wiki pages and re-organizing them into these main categories.

Many thanks to Michael Brohl for proposing and kickstarting this effort. We are looking for people to contribute to this work so if you are interested in helping with the wiki clean up effort then please join the discussion on the development mailing list.

End User Documentation

Another community initiative that was launched last month was about end user documentation. We currently do not have a consolidated end user guide that gives practical information about the setup and use of the standard OFBiz applications. Feedback from the community has shown that this is an important area that we need to address.

Please note that the focus of this effort will be to provide information for users and non-technical people.

The following points are part of the proposal:
  • OFBiz Glossary : Putting together a full glossary of OFBiz words, definitions and concepts so that the people have a common understanding of what things mean
  • End User Guide : This guide will give users an overview of the applications and processes of OFBiz and will include a basic list of tasks for each process
  • Menu Structured Documentation : Documentation that follows the existing menu structure and provides details about a specific screen. Hopefully this will eventually replace or update the current in-application screen help that is available already within OFBiz
  • How-Tos : This will be a quick reference How-To by topic
  • Examples and Tutorials : These will provide practical examples of using the applications in a real life scenario
We will be temporarily using our existing End User Documentation confluence workspace to work on and prepare these. As the documentation sections are completed, they will be moved back onto our re-structured wiki.

Thanks very much to Craig Parker and Sharan Foga, who are leading and co-ordinating this effort. If you are interested in helping contribute or would like to be involved then please join the End User Documentation discussion on our development mailing list.

OFBiz Flexible Reports

Also announced this month was the creation of OFBiz Flexible Reports. This is a new feature that was recently added. Documentation about Flexible Reports is included in the OFBiz Birt component as part of the markdown files.

This is a major improvement for creating reports in OFBiz. Essentially it is now a lot simpler for users to use the Birt component within OFBiz to easily create, modify and update reports.

More details about the changes can be found here.

New features and improvements

Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:

Framework

  • Update msyql sql-type for datetime field-type to support Fractional Seconds in Time Values (OFBIZ-9337)
  • Remove final remaining dependencies from framework on plugins (OFBIZ-9322)
  • Add support for 'set-if-null' and 'set-if-empty' attributes on screens for "set" element (OFBIZ-9251) "set-if-null" controls if field can be set to null and "set-if-empty" controls if field can be set to an empty value.
  • Refactor fields with "id-ne", "id-long-ne" and "id-vlong-ne" to "id", "id-long" and "id-vlong" respectively which are primary keys (OFBIZ-9354) The new field types will be given the "not-null=true" attribute in order to make the fields NOT NULL in the database (similarly to primary keys). This change will be reflected in the documentation. This discussion sparked the change.
  • Split the tools folder from the trunk and put it in another branch (OFBIZ-9256) The tools folder contains only tools used by the OFBiz team and is of no help for OFBiz users. So this should not be delivered with the OFBiz trunk, plugins or releases.
  • Improvement of String Comparisons (OFBIZ-9254) There is an inconsistency in the code for string comparisons. For example statusId.equals("PRUN_COMPLETED") should be written as "PRUN_COMPLETED".equals(statusId) because the former can throw NullPointerException if the variable is found to be NULL.
  • Upgrade Tomcat to 8.5.15 (OFBIZ-9366)
  • Convert RateServices.xml from mini-lang to groovyDSL (OFBIZ-9381) Related to task OFBIZ-9350 . Deprecate mini-lang by converting the services updateRateAmount, deleteRateAmount, updatePartyRate and deletePartyRate from mini-ang to groovyDSL.

Plugins

  • Update Apache Solr/Lucene to release 6.2.1 (OFBIZ-8316)
  • Rename Lucene runtime folders to clearly show the origin (OFBIZ-9357)
  • Improvement of String Comparisons (see above) (OFBIZ-9254)
  • Refactor fields which are primary keys for plugin components (see above) (OFBIZ-9351)

Bugfixes

Functional and technical bugfixes:

Framework

  • Remove duplicated data for PartyStatus Reference discussion: https://s.apache.org/T2UD
  • Error viewing tomahawk-themed page when externalLoginKey is not enabled (OFBIZ-9345)
  • In TemporalExpressions.Frequency the starting times of a job move away from given freqCount raster (OFBIZ-9374) If a job is scheduled using TemporalExpressions.Frequency the start time of the job will gradually move forward when the excecution of the job is delayed by one or more units of the frequency type.

Plugins

  • Multisite feature not working properly due to URL modification (OFBIZ-7120)

Documentation

Framework

  • Remove unnecessary field types (see above) (OFBIZ-9351)

Saturday May 20, 2017

Reporting in Apache OFBiz® and the OFBiz Flexible Reports, a new and important feature

Reporting in OFBiz: a brief history of the Birt component which has been recently refactored with a new and important feature added[Read More]

Friday May 05, 2017

Apache OFBiz News - April 2017

Apache OFBiz News April 2017

Welcome to our regular monthly round-up of OFBiz news. This month we have news about more new OFBiz tutorials that are available, we setup another video channel, OFBiz goes live on Facebook, we remove some deprecated entities and we congratulate 7 new ASF members from our community.

Apache OFBiz on Facebook

Did you know that Apache OFBiz is now on Facebook?

Our project expanded its social media presence this month by getting setup on Facebook. Facebook automatically generates pages for highly requested pages that don't already exist. One of these auto generated pages existed for OFBiz and it had over 250 likes indicating that followers were looking for us. Our new project Facebook page can be found at the link below

OFBiz on Facebook

We are now working on actively building our following. If you are on Facebook then please help support OFBiz by liking us and sharing your comments, views and pictures with us. Many thanks to Deepak Dixit, Ashish Vijaywargiya and Michael Brohl for getting things setup and also for taking on Facebook administration on behalf of the project.

OFBiz Vimeo Channel

Last month we talked about our Youtube Channel. This month we are once again expanding and have also setup a Vimeo Channel for OFBiz. We will be publishing the same content on both channels and our users will have the choice of which video channel they prefer to use.

Please feel free to follow our video channels and thanks to Deepak Dixit for getting this setup.

New OFBiz Tutorials

During the month, one of our community members, Pranay Pandey, created some more video tutorials. The new videos can be found using the links below:

  • Introduction to OFBiz Directory Structure Release 16.11
  • Create a Plugin Release 16.11
  • Setup OFBiz with MySQL
  • Setup OFBiz in IntelliJ IDEA IDE - Release 16.11 and Trunk
  • Database Entities
  • A very big thank you to Pranay for taking the time to make these videos and we hope that our community is finding them useful.

    If you have some ideas for videos that you would like to see on our channels or perhaps you would like to create a video for our OFBiz Youtube and Vimeo channels then please send a message with the details to our dev mailing list dev@ofbiz.apache.org.

    New ASF Members from the OFBiz Community

    Seven people from our community have become Apache Software Foundation members. Membership is by invitation only so it's a real honour to be invited. Many congratulations to:
    • Taher Alkhateeb
    • Michael Brohl
    • Scott Gray
    • Bilgin Ibryam
    • Nicolas Malin
    • Anil Patel
    • Ashish Vijaywargiya
    This means that OFBiz now has 12 ASF members from our community. Thank you all for your work and commitment to OFBiz and the ASF.

    Removal of Deprecated Entities

    The code clean up work is continuing and as part of this the community has decided to remove old and deprecated entities. Details of what has been removed can be found in the following Jira

    OFBIZ-9327 Remove Deprecated Entities

    Thanks very much to everyone who has been involved in this and other clean up or refactoring work.

    New features and improvements

    Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:

    Framework

    • Refactor list forms related to gateway transactions in accounting into grids (OFBIZ-9282) Refactor various list form references in screen widgets.
    • Add the entire plugins directory to .gitignore.
    • Remove "quick ship" option with back ordered products.
    • Include proper validation when adding attributes with the AddProductAttribute form (OFBIZ-7452)
    • Remove duplicate NewQuote button on ViewQuote page (OFBIZ-9318)
    • Upgrade to the latest version of Apache Geronimo Transaction from 3.1.1 to 3.1.4.
    • Remove deprecated entities and related migration services (OFBIZ-9327)
    • Convert service which creates and removes a QuoteRole to entity-auto and add service to update and expire a QuoteRole (OFBIZ-9331)
    • Resolve OFBiz-framework dependencies on OFBiz-plugins in order to build an run tests (OFBIZ-9322) Move some files into applications directory and modify others to fix the dependency order.

    Plugins

    • My Portal: Align column titles in list forms (OFBIZ-8486)
    • Remove dependencies from OFBiz framework to plugins (OFBIZ-9322) This is related to a commit in ofbiz-framework in which data that is removed in plugins is added to the framework (see above).

    Bugfixes

    Functional and technical bugfixes:

    Framework

    • SOAPEventHandler only outputs error to log when secureSoapAnswer = "false" (OFBIZ-9289)
    • Sorting Links in Lookup opens new unstyled window instead of sorting the table (Find Content page) (OFBIZ-9280) Behavior occurs for DataRessourceId and OwnerContentId.
    • Add missing default-entity-name attribute to the "entity-auto" service definition for createReturnItemResponse. The missing attribute was causing a service execution error, preventing the processing of returns.
    • Update Tomcat to 8.0.42 because of a disclosed bug in current version (see ticket for the notice from Apache) (OFBIZ-9313)
    • The createTenant Gradle task fails (OFBIZ-9273) This issue is due to the creation of the build.gradle file in plugin which has an empty gradle task defined in it. Solve by comment out the build.gradle template content.
    • Creating plugins crashes the build system (OFBIZ-9273) The issue was due to introducing an incorrect flag of pluginId instead of plugin.name.
    • Keywords for a newly added WorkEffort are not listed (OFBIZ-9315)
    • On setting verbose true, UtilHttp.getParameterMap() method prints username and password in logs (OFBIZ-9310) Commented out the line that prints "Request Parameter Map Entries" as it may print username and password entered by a user.
    • EmploymentApplications in Party manager does not list any record even if they exist (OFBIZ-9220)
    • Routing updates with empty routing name (OFBIZ-7375)
    • AccountingQuantity is not updated when a physical inventory variance is created (OFBIZ-9324)
    • Create and use an OWASP PolicyFactory for content sanitization in ContentWorker for Birt Flexible Reports (OFBIZ-9166)

    Plugins

    • Lucene 5.4.0 deprecated default BooleanQuery constructor causes multiple error screens:
      • CMS shows error screen on clicking Find button (OFBIZ-9301) (ticket contains detailed Information about the constructor)
      • CMS shows error screen on Product Search (OFBIZ-9308)
      • Ecommerce component showing error screen on searchContent from showcontenttree page (OFBIZ-9309)
    • The help button or link does not show for the Birt, BI and example components (OFBIZ-9311) OFBIZ-9312 is a duplicate of this.
    • Cannot obtain Lock on Lucene index Lock (OFBIZ-7265)
    • Remove the birt.tld file and all related files and lines (OFBIZ-9323) For legal reasons the Birt Web Viewer from OFBiz needs to be removed.

    Documentation

    Framework

    • After changing the How+to+migrate+OFBiz+from+Derby+to+MySQL+database page in wiki, adapt the entityengine definition to modern mySQL use.
    • ViewSize converted to an Integer for multiplication.

    Plugins

    • Complete Birt Flexible Reports documentation (OFBIZ-9188).

    Thursday April 06, 2017

    Apache OFBiz News - March 2017

    Apache OFBiz News March 2017

    Welcome to our regular monthly round-up of OFBiz news. This month we have news about some new OFBiz tutorials on Youtube, we publish our first blog contributions from the community, work continues on our website, the community decides to remove hot-deploy and we welcome another new committer to the project.

    New OFBiz Youtube Videos

    Did you know that Apache OFBiz has a Youtube Channel?. This month one of our community members Pranay Panday created some new introduction videos and uploaded them to our channel. The new videos can be found using the links below:

    1. How to use Apache OFBiz Mailing Lists
    2. OFBiz Beginners Tutorial - Basic Setup Release16.11
    A big thank you to Pranay for taking the time to make the videos and we hope that our community will find them useful. If you would like to create videos for our OFBiz Youtube channel then please send a message with the details to our dev mailing list. dev@ofbiz.apache.org

    New Committer

    This month the Project Management Committee (PMC) invited James Yong to become a Committer on the project and he accepted.

    Congratulations and welcome James!

    OFBiz Blog Articles

    Last month we mentioned that we would be opening up our blog to also accept articles about OFBiz from our community members. During March we received two blog articles from Pranay Pandey. They have been published and you can find them using the links below:

    Thanks very much to Pranay Pandey and remember that if you have an article that you would like to publish on our blog about OFBiz or how you are using it then please send a message to our dev mailing list dev@ofbiz.apache.org

    OFBiz Website

    We are still working on our new OFBiz website and to help visibility and collaboration a new branch has been created so that the community can see the work so far, comment and also help out. Please feel free to take a look at and follow our Work in Progress and post any feedback to our dev mailing list. dev@ofbiz.apache.org

    A wiki page has been created to help organise and plan the outstanding work.

    The new website will include a Service Providers page so if you are an OFBiz Service Provider and would like your logo displayed then please check that you meet the requirements. for being included.

    Removal of hot-deploy Directory

    The refactoring of the trunk is continuing as more work is being done on standardising and formalising the plugins system. As part of this work the community has discussed and agreed to remove the hot-deploy directory. The hot-deploy directory a way to enable extend OFBiz functionality by including your own specific component. This functionality is now available as part of the integrated plugins system.

    As the plugin system API provides more functionality than hot-deploy such as the automatic control of a plugin, the removal of hot-deploy will help standardise the way that OFBiz can be extended and also help with the ongoing refactoring effort and code clean up.

    IMPORTANT NOTE: Please note that the removal of hot-deploy only applies to the current trunk and does not affect any of the existing releases.

    New features and improvements

    Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:
    • Create new task pullAllPluginsSource and make improvements to plugins API (OFBIZ-9182) This task downloads all the official Apache OFBiz plugins from source control and places them in the /plugins directory inclusive of their .svn directory. It makes it possible to automate buildbot for OFBiz without the need to use something like svn:externals and to have two separate build scripts for framework-alone and framework+plugins.
      • Update README.md with new task definition and cleanup.
      • Improve the plugins API in gradle to make use of shared code for calling gradle as a sub-process from multiple locations.
    • Refactor list related forms in BillingAccount (OFBIZ-9215), Cost (OFBIZ-9229), Lookup (OFBIZ-9232), Partymgr (OFBIZ-9266), and Manufacturing (OFBIZ-9236) screen widgets. Refactor various list forms into grids and various list form references in screen widgets.
    • Change to only handle labels with the "_" separator between languages and countries in LabelManagerFactory.java (OFBIZ-9261)
    • Remove the now useless hot-deploy directory (OFBIZ-9268) The hot-deploy removal was discussed here.
    • Convert CarrierShipmentMethod (OFBIZ-8657), QuoteTerm (OFBIZ-8903), and ShipmentMethodType (OFBIZ-8664) entities respective CRUD services to entity-auto.
    • Use try-with-resources statement wherever possible (OFBIZ-8202).
    • Makes sure the local date time uses the time zone from the local browser (OFBIZ-9264). The user can still set his own time zone though.
    • Implement OFBiz startup message which shows after all containers/components are loaded (OFBIZ-9285)

    Bugfixes

    Functional and technical bugfixes:
    • Login and logout process in demos show a certificate issue (OFBIZ-9206)
    • Missing reference to the delegator in HtmlFormMacroLibrary.ftl (OFBIZ-9230) The delegatorName needs to be passed on to a macro. This was achieved by creating an EntityUtilProperties.getPropertyValueFromDelegatorName() method for the macros renderLookupField and renderTextField.
    • compareBigDecimals in org.ofbiz.minilang.method.conditional.Compare does not compare certain values correctly (OFBIZ-6386) compareBigDecimals scales down and rounds up meaning you lose information and the comparison result is not as expected
    • catalog/control/FindReviews does not render proper column data Replace "use-when" attribute with "ignore-when" attribute in ListReviews form amending conditions used accordingly.
    • While re-ordering an order, OrderTerms field doesn't set (OFBIZ-9252)
    • Error message when svn is updating due to pullAllPluginsSource (OFBIZ-9262) Remove the duplicate plugins directory.
    • Error in accounting report InventoryValuation with thruDate with an empty value (OFBIZ-9265) The provided patch fixes this by setting the default thruDate to now.
    • Renamed internal task to avoid collission on regex task name matching (OFBIZ-9262) A bug was detected in which a task activates when calling cleanAll because it starts with the word "clean" which is matched automatically in a regex.
    • Induce Model XML from Database throws exception (OFBIZ-7473)
    • Regression: a commit between the R15 branch and the Gradle switch uses/blocks the ports (OFBIZ-9196) Disabled the admin server from starting on contexts other than "start". This commit has reference to this discussion thread in which buildbot is failing in between commits due to blocking the admin server thread.
    • Error: Cannot do a find that returns an EntityListIterator with no transaction in place (OFBIZ-9286)

    Documentation

    • Update \tools\demo-backup\README.MD now that "Let's encrypt" is used on demos (OFBIZ-9203) Change derived from OFBIZ-7928.

    Wednesday March 22, 2017

    Omnichannel Orders - Does your system support it?

    Omnichannel Orders - Does your system support it?

    Omnichannel is a business model that is focussed on increasing customer experience. Apache OFBiz makes use of the Omnichannel concept as part of its standard functionality i.e. it provides a type of retail solution that integrates the different shopping methods made available to consumers (e.g. online, in a physical shop, or by phone). Omnichannel Order Management Systems (OMS) enables retail businesses to go that extra mile to seamlessly cater for their customer expectations.

    In this article, we will talk about Omnichannel order management system capabilities, its importance and the main things to look for when you want to improve the way that your customer orders products from you.

    How Important Is It?

    Today, every retailer with a presence on the internet wants to make use of online orders. But, is it enough to just to empower your customers to place orders through your company website (i.e. eCommerce Store) ? As you start taking orders online, you will find that there are many other additional challenges that come along the way. e.g changes to customer orders, requirements changes and how do you manage returns or refunds etc. All of these things need to be considered and managed. Generally, tasks like these are done by a Customer Service Representative (CSR). A CSR is someone who is familiar with the the backend application being used and is also the main contact with the customer regarding any order problems.

    Customer satisfaction is always the topmost priority for any business so knowing your customer and having their profile and order history handy can really help the CSR to make decisions based on any specific business rules or guidelines.

    How Can It Make Your Employees and Customers Happy?

    Your customers want to have a seamless experience when they visit your e-Commerce store, and the list below contains some of the important points to include or incorporate. Does your existing software have these backend abilities to -

    • search and view orders from customers
    • make changes to the order for item quantity or any other details
    • fulfill the orders and keep track of it
    • manage returns and refunds
    • review customer profile
    • review customer purchase history
    • take orders by phone, email or through any other channel
    • keep track of inventory
    • order Online/Pickup In-Store/Return In-Store
    All of these functions are the core part of any Omnichannel Order Management system. It makes your customers happy because they get all the information they need online when they need it. It makes your employees happy because they have all the information available when dealing with a customer online or via the phone. Having the right information available and accessible is the key.

    On top of all of this your system should be customisable. Not everyone wants to work in exactly the same way, so being able to customise what you want, when you want is important to a business. Another aspect is scalability, many businesses start off small and then grow so your software system should be able to scale and grow as you grow.

    Omnichannel and Apache OFBiz

    Apache OFBiz is an open source product for the automation of enterprise processes and includes these core Omnichannel order management capabilities. If you have a software system which actually provides you with most of the core functionality that you are looking for and is easily customizable/extendable/expandable then it makes your job a lot easier. OFBiz has a proven track record of serving many Business to Consumer (B2C) implementations, please check here for details Apache OFBiz User List

    If you want to explore possibilities with OFBiz as a solution evaluator or developer then please refer to the OFBiz blog post - Apache OFBiz - How and where to start?

    In future posts, we'll take each of the Omnichannel OMS capabilities in turn and walk through the processes and the support OFBiz offers.

    Thanks for taking the time to read this post and please feel free to provide your comments and feedback.

    This blog post was written by Pranay Pandey Apache OFBiz Committer.

    Thursday March 09, 2017

    Apache OFBiz News - February 2017

    Apache OFBiz News February 2017

    Welcome to our regular monthly round-up of OFBiz news. This month we have news about our OFBiz Community Days, we re-structure our OFBiz repository, the community decides it's time to deprecate Minilang, we invite our community to become bloggers and our Committer group and PMC grows.

    OFBiz Community Days - February 2017

    The first of our extended Community Days was held in February. Instead of a single 'community day', we have extended it to cover 5 days so that more of our community will have the chance to contribute. Over the period we have 11 commits to the codebase. The low participation may be related to the timing of the community days as it has moved forward one month (from March to February) so people may not have had time to prepare for the change.

    We hope to promote and get more community involvement in our next Community Days event in May. Our Community Days are held every quarter and more details can be found on our OFBiz wiki

    Re-structured OFBiz Repository

    Last month we mentioned the renaming of the specialpurpose to plugins. Following on from that we have re-organised our trunk repository and separated plugins from the core framework.

    Everything except the plugins directory has been moved from http://svn.apache.org/repos/asf/ofbiz/trunk to http://svn.apache.org/repos/asf/ofbiz/ofbiz-framework/trunk

    The plugins directory has been moved to a brand new repository http://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk.

    For more information and full details of these changes please refer to our OFBiz Source Repositories page

    New PMC Member and New Committer

    This Project Management Committee (PMC) has invited both a new Committer and a new PMC member this month. Swapnil Shah has joined the Committers group and Deepak Dixit has joined the PMC.

    Congratulations and welcome to both Swapnil and Deepak!

    Deprecating Minilang

    A key discussion this month was related to Minilang. OFBiz currently uses Minilang as a Domain Specific Language (DSL). The project has been gradually phasing it out in favour of Apache Groovy. Details of the discussion can be found here and the community consensus is that it is time to deprecate it.

    Contributing to the OFBiz Blog

    We would like to open up our OFBiz blog to members of the community who would like to publish an article or blog post OFBiz or how they are using it. By sharing information we hope this will help promote OFBiz and also share implementation experiences.

    If you have an article that you would like to publish on our blog then please send a message to our mailing user@ofbiz.apache.org

    New features and improvements

    Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:
    • Refactor list related forms in Agreeement widgets (OFBIZ-9186) Refactoring various list forms into grids and the respective list form references into screens
    • Create new gradle task pullPluginSource using a subversion gradle plugin (OFBIZ-9182)
      • Added a new gradle task called pullPluginSource that fetches a plugin from the (yet to be created) plugins repository. Also updated the README.md file to reflect the changes that happened recently on the plugin management tasks This is the last commit required before restructuring the subversion repository as per the discussion thread mentioned in the above JIRA.
      • Moves plugins and creates the new structure.
    • Improve FindGeneric entity screen with a xml form (OFBIZ-9217) The xml for Groovy and ftl forms is now build by analyzing the entity instead of rendering the forms through a dynamic call-to-screen xml. The find operation is now realized by the perfomFind service.
    • Disable the gradle daemon on embedded plugin tasks (OFBIZ-9182) In prepartion to update our buildbot scripts, we disable the daemon from running in the plugin API calls. This substantially improves memory consumption. The change applies to both installPlugin function as well as the ofbizBackground task design.

    Bugfixes

    Functional and technical bugfixes:
    • After creating a new Flexible Birt Report, visualization is not trivial (OFBIZ-9194) Steps needed: add the data set fields with the Birt Report Designer and then publish the report. This will be documented in OFBIZ-9188.
    • Missing file in ecomseo (only seo version) results in error (OFBIZ-9198)
    • Cancelled OrderItems are still included in orderGrandTotal. (OFBIZ-9204)
    • Birt log: adjusting the java.util.Logger to the org.apache.log4j.Logger level (OFBIZ-9201) Currently the class BirtContainer calls the birt engine with the hard coded log level 'ALL' which generated a huge log file. You can select the log level from debug.properties to populate the ReportEngine log file.
    • SimpleMethod: FindByAnd never using EntityListIterator (OFBIZ-9152)
    • Reinstate url cache in UtilURL.fromResource (OFBIZ-9208)
    • Correct svn url for pullPluginSource task (OFBIZ-9182)
    • Remove SalesOrderItemFact related services from order component (OFBIZ-9213) SalesOrderItemFact entity is defined in bi-component so these services should reside there.
    • Report GL Account Trial Balance execution error (OFBIZ-9216)
    • Login and logout process in demos shows a certificate issue (OFBIZ-9206)
    • ofbizUrl: include host+port and break some reverse-proxy/docker setups (OFBIZ-9224) import <SystemProperty systemPropertyId="port.https" systemResourceId="url" systemPropertyValue=""/> in trunk demo.
    • Load demo data shows error loading xml files (OFBIZ-9211) "gradlew cleanAll loadDefault" generates a data loading error. It's logically due to the removing of plugins/component-load.xml in OFBIZ-9182. A temporary solution is to put it in again. A definitive solution is to remove data dependencies. The same problem exists with ecommerce data which create dependencies from applications jleroux.

    Tuesday March 07, 2017

    Apache OFBiz - How and where to start?

    Apache OFBiz - How and where to start?

    Welcome to the world of open source automation of enterprise processes with Apache OFBiz. If you are reading this post then you at least have some interest in knowing more about Apache OFBiz. Here is a very quick guide to get you started.

    What is Apache OFBiz?

    Apache OFBiz provides you with a rapid application development framework together with a universally adopted business data model and processes. It gives you an easy tool to customize the standard environment to address your own business requirements. It does 80% percent of the work. The only thing you need to do to manage the remaining 20% is to explore the framework, data model and understand the development best practices.

    OFBiz for Analysts and Non Developers

    If you are an analyst or ERP solution evaluator then you can start exploring the business processes that are freely available with OFBiz out of the box. For this, the very first step would be to do a gap analysis with already supported applications and features. Applications such as Accounting, Order Management, E-Commerce, Inventory, Manufacturing and CRM are already integrated.

    If you would like to see what OFBiz looks like and how it works then the project has setup a demo installation for you to use as an evaluation:

    16.11 Release Branch Demo (stable)

    Front-End Store

    Management Applications

    You can find out more information on the supported business processes and use cases by using the following links-

    1. Universal Business Process Library

    2. Business Process Stories and Use Cases Library

    Development and Custom Requirements

    Addressing custom requirements using Apache OFBiz needs a good understanding of the business processes from the perspective of reusing existing OOTB functionality for your implementation.

    Every business has its own version of certain processes e.g. one would like to pick, pack and ship orders from one platform and another would like to have restrictions to use third party applications instead. Both of these scenarios are possible in Apache OFBiz, some functionality is included out of the box (OOTB) and others can be achieved with some customizations. Apache OFBiz download instructions can be found here.

    If you want to get most of it, the very first step should be to understand the business processes, applications and tools that already come with OFBiz. These applications and tools are provided OOTB and are supported by the community. If you are a developer, you can start by getting familiar with the framework architecture, artifacts and the control-flow. Developers can start working with Hello World application that can be found in Apache OFBiz Tutorial - A Beginners Development Guide.

    The official Apache OFBiz YouTube channel contains some tutorial videos that may help developers and can be accessed at: https://www.youtube.com/user/ofbiz

    If you would like to take a look at the developers trunk then the project has setup a demo installation for you to try out and evaluate.

    For developers: trunk

    Front-End Store

    Management Applications

    NOTE If you are customising and implementing production systems then we recommend using the latest stable release which can be downloaded here.

    Apache OFBiz Community

    You can get always further help, advice, information and support from the Apache OFBiz community by posting to the user or development mailing lists. Subscribe to the OFBiz mailing lists for updates on the latest discussions, improvements and new features. Once you subscribe to the required mailing list, you can post your questions with an assurance to get answers and guidance whenever required. OFBiz has a dynamic community available round the clock as it has contributors spread across the world. The Apache OFBiz community is continuously working on improving both technical and user functionality and support. To keep up to date and learn more follow our OFBiz Blog.

    I hope this quick guide will help you get a head start with your implementation. Please feel free to provide your comments and feedback..

    This blog post was written by Pranay Pandey Apache OFBiz Committer.

    Monday February 13, 2017

    Apache OFBiz News - January 2017

    Apache OFBiz News January 2017

    Welcome to our regular monthly round-up of OFBiz news. This month we have news about our OFBiz Community Days planned for 2017, specialpurpose gets a new name, an initiative is started to create are range of user acceptance test cases for our releases and the community discusses re-defining what Apache OFBiz actually is.

    What is Apache OFBiz?

    One of the community discussions that happened during January was about what Apache OFBiz is. It seems like a strange discussion to be having after 10 years at the ASF but with the major re-factoring and changes happening within the project in areas such as the framework and plugin management, we have an opportunity to redefine what OFBiz is.

    Could we perhaps create sub-projects that would focus on specific OFBiz areas and what other potential products could be included.

    Details of the discussions can be found at the following link:

    Discussion: What is Apache OFBiz?

    Please feel free to add your comments and feedback.

    Renaming Specialpurpose to Plugins

    OFBiz has a range of core applications (e.g. Accounting, Manufacturing, Order and Party) but also has some specialist (or specialpurpose) applications. This includes applications such as E-commerce, Asset Management, MyPortal, Project Manager and WebPos. As these specialpurpose applications use and build on the core applications, they fit very nicely into the concept of an OFBiz plugin. The term plugin is a lot easier and clearer description of these applications so we have decided to rename the specialpurpose directory to plugins.

    In a future update we will talk about the working being done around creating a repository for official project plugins.

    User Acceptance Test Cases and Stories

    An effort has been launched by the community to document a range of OFBiz User Stories around various functionality and then look at preparing User Acceptance Test Cases for them. This would be something that could be applied as a simple quality control check to each release version to highlight where and when standard processing fails a test.

    With the ongoing project changes this initiative will be very useful for ensuring that the work in process does not break any of the existing OFBIz functionality. If you'd like to be involved with this initiative or would like more information then the discussion thread can be found at the following link.

    Discussion: User Acceptance Testing Discussion

    OFBiz Community Days 2017

    Over the last two years we have been holding OFBiz Community Days each quarter. Feedback from the community is that they would like these Community Days to continue for 2017 but in a slightly changed format. Instead of each Community Day being one fixed Saturday per quarter, it will be extended to include more days around it. This will give a lot more flexibility and allow more people to contribute.

    The following are the dates for our Community Days in 2017
    • Q1 - February 2017 : Friday 17th, Saturday 18th, Sunday 19th, Monday 20th and Tuesday 21st
    • Q2 - May 2017 : Friday 19th, Saturday 20th, Sunday 21st, Monday 22nd and Tuesday 23rd
    • Q3 - August 2017 : Friday 18th, Saturday 19th, Sunday 20th, Monday 21st and Tuesday 22nd
    • Q4 - November 2017 : Friday 17th, Saturday 18th, Sunday 19th, Monday 20th and Tuesday 22nd

    For more information, please take a look at our Community Days page on our wiki.

    New features and improvements

    Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:
    • Update Apache Solr/Lucene to release 6.2.1 from 5.3.1 (OFBIZ-8316)
    • Create and use an OWASP PolicyFactory for content sanitization in ContentWorker for Birt Report Builder (work in progress) (OFBIZ-9166)
    • New and enhanced implementation of Birt. Easier way of report creation for users (OFBIZ-6919) It allows the creation of "report masters" by the developer, which will in turn let the user create its own reports. Data connection of the report is fully generated by OFBiz based on report master. Design is user made. Filtering is made via content forms stored in the database ("FORM_COMBINED") data_resource.
    • Make xssi prefix configurable and multi-tenant aware (OFBIZ-9169)
    • Renamed the directory specialpurpose to plugins (OFBIZ-7972) In another step towards completing the plugin system for OFBiz, we renamed the /specialpurpose directory to /plugins and changed all occurences of the word "specialpurpose" to "plugins" in all files found in the system. Reference discussion: http://markmail.org/message/hpyuxkmftiyn44w2
    • Add Geo id support for New Zealand (OFBIZ-9172)
    • Remove the cleanGradle and cleanAnt Gradles Task because of issues with Windows (OFBIZ-9183)
    • Fully refactored the component loading logic in Gradle (OFBIZ-9182) Changing the directory structure should have no impact on the build scripts. Gradle will now ignore a component if it exists but is disabled in ofbiz-component.xml (i.e. enabled="false").
      • This makes loading very flexible
      • Removes /plugins/component-load.xml.
      • Disables the ebaystore component in ofbiz-component.xml.
      • The above is needed as a first step toward preparing the project for the svn restructure.
    • Removed the plugin activate/deactivate feature (OFBIZ-9182)

    Bugfixes

    Functional and technical bugfixes:
    • Refactor ContentWorkerInterface methods signatures (OFBIZ-9164) Fixes an issue in the ShowCartItems.ftl file by changing a parameter in the signature of the protected ShoppingCartItem() method from ShoppingCart.ShoppingCartItemGroup to ShoppingCartItemGroup
    • Exception caused by adding an item to an order (OFBIZ-9167) While at it I also found issues with cartLine.getName() in ftl files. It was also missing the dispatcher. This was broken by OFBIZ-9164
    • JobPoller does not run and hence scheduled/async jobs are never run (OFBIZ-9155)
    • Adds entity-alias use="required" in entitymodel.xsd (OFBIZ-9184)
    • "View Order" throws exception in getReturnableQuantity (OFBIZ-9157)
      • Solution: adjust the service-definition to allow for "null" value of the returnablePrice OUT parameter.
    • Changes log level so it always shows info in minilang (OFBIZ-6206)
    • Converts delegator.find to EntityQuery (OFBIZ-9189)

    Documentation

    • Updates documentation in README.MD for wiki
      • Adds a note for JDBC drivers Move the Security section below the Quick start section
      • Adds a note for % progress indicator
    • The README.md.html is to be used at https://cwiki.apache.org/confluence/display/OFBIZ/ The+official+demos+and+how+to+maintain+them

    Thursday January 05, 2017

    Apache OFBiz News - December 2016

    Apache OFBiz News December 2016

    Welcome to our regular monthly round-up of OFBiz news. This month we have news about our OFBiz Community Day, podcasts from the OFBiz track at Apachecon EU, the use of code analysis tools as a way for new contributors to get involved with the project, protecting the OFBiz trademark and OFBiz celebrates 10 years at the ASF.

    Happy Birthday Apache OFBiz!

    During December OFBiz celebrated its 10th Apache birthday. On 20th December 2006, OFBiz graduated from incubation to became an Apache Top Level Project. Since then, with the help of our community, we have continued to grow, develop and incorporate new technologies. The project has 31 committers and a large number of contributors coming from our very active user and developer mailing lists.

    Over the past 10 years the project has released a range of OFBiz versions from 4.0 through to 16.11 (released in November 2016). We are all looking forward to our next 10 years at Apache!

    Podcasts of OFBiz Presentations from Apachecon EU Seville

    Don't worry if you couldn't make it to Apachecon EU in Seville, most of the presentations have been recorded and are available on Feathercast The audio from the OFBiz track at Apachecon is available via the link below:

    http://feathercast.apache.org/tag/ofbiz/

    Thanks very much to the ASF TAC team (including our own OFBiz contributors Gaurav Saini and Youssef Khaye) for managing the recording and also Rich Bowen for uploading everything.

    OFBiz Community Day

    Our Community Days are held every 3 months and the final one for 2016 was held on 17th December. Even though it was very close to the holidays, people from the community still made time to get together and work on improving OFBiz.

    On 17th December, the ASF Status Monitor was showing OFBiz Committer, Michael Brohl as the most active Committer that day. Thank you Michael and also everyone who participated and we hope that you will continue to be involved in any of our future Community Days. Information about our Community Days can be found on our OFBiz Wiki.

    Protecting the OFBiz Trademark

    The OFBiz PMC has been making an extra effort to pro-actively support ASF Trademarks and Brand Management to protect our OFBiz trademark. OFBiz was recently registered as an ASF trademark and all projects need to ensure that their brands are not misused. All third party sites need to comply with ASF Trademark Guidelines.

    In addition, the project has adopted a new policy to limit Unfair Marketing Messages on the Mailing Lists.

    We ask anyone to report potential trademark misuses to the OFBiz PMC private mailing list (private@ofbiz.apache.org).

    Fixing Defects Using Code Analysis Tools

    If you are interested in contributing to OFBiz but not sure where to start then maybe this could help.

    Now that our current OFBiz release and trunk is using Gradle, we now have an easy way to run source code analysis tools on our codebase. Tools like PMD and FindBugs generate useful reports containing pointers to code that may need to be improved or fixed.

    We would like to get as many people from the community involved and working together to fix as many defects as possible as it will give us a cleaner codebase, increase the confidence for potential adopters and perhaps more importantly, make it easier for new contributors to help the project

    Please take a look at the following mailing list thread which goes through all the steps needed to get started. If you have any questions then please feel free to ask on our development mailing list (dev@ofbiz.apache.org)

    New features and improvements

    Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:
    • Refactor and simplify the startup sequence in OFBiz (OFBIZ-8337) Continuing the refactoring work on the startup sequence, this commit specifically focuses on the ComponentContainer and how it loads components into the system. The following changes are made:
      • Simplify and cleanup the ofbiz-containers.xml to have only one entry
      • Substantially simplify the ComponentLoaderConfig class and remove unnecessary defined state
      • Delete the JustLoadComponentsContainer (used to exist for the server command --testlist which no longer exists)
      • Fully refactor the ComponentContainer class and breakup the messy logic into chunks of private methods. The methods are also properly documented.
      • Remove an old reference to the testlist container which no longer exists
      • Delete the NativeLibClassLoader.java
      • Delete the native classpath logic in Classpath.java
      • Refactor the ComponentContainer and StartupControlPanel to operate without the NativeLibClassLoader. This substantially simplifies the code
      • Declare a URLClassLoader in ComponentContainer that is instantiated upon building the classpath for all components. This makes the classloader start in one shot
      • Simplify the Config file and remove fields that are not used. Also refactor some messy logic for loading the props file and other code improvements
      • Refactor all the .properties files for startup to have a consistent structure that clearly documents all available properties and the default value for each property. This change is also related to the changes applied on Config.java
      • Remove the declaration of the StartupLoader implementation class from all startup .properties files because only one implementation exists and it should be the default always.
      • Refactor the loaders retrieval code (main, rmi, test, load-data) defined in the startup .properties files
      • Refactor some switch statements to comply with java coding standards
      • Add the DTDs defined in base through Gradle because we removed the NativeLibClassLoader and the classpath buildup logic in StartupControlPanel
    • Refactor javadocs in OFBiz to be standards compliant (OFBIZ-9144)
    • LoginWorker HashCrypt the type of hash for one-way encryption (OFBIZ-8537) Added PBKDF2 hash type to encrypt password.
    • Added user friendly error message in duplicateProduct service, if passed productId already exists than return user friendly error message instead of entity exception. (OFBIZ-7402)
    • Add Party criteria to Routing Tasks (OFBIZ-9134)
    • Proper Form Validation should be there while
    • Client Side validation
      • missing on Create Payment screen. (OFBIZ-7430)
      • missing on Create New Tax Authority Form. (OFBIZ-7436)
      • required in Add Billing Accounts Role. (OFBIZ-7429)
      • on Add product categories form in catalog. (OFBIZ-7425)
      • required while creating Product Association. (OFBIZ-7424)
      • while creating price rule from catalog manager. (OFBIZ-7307)
      • missing at Create User Login form. (OFBIZ-7984)
      • missing at Create Ebay Account form. (OFBIZ-7952)
      • missing at Add Ebay Configuration form. (OFBIZ-7866)
      • required in Tax Infos (Add Party Tax Authority Info). (OFBIZ-7437)
    • Refactor forms in Example (OFBIZ-9146)
    • Refactored Config.java to simplify fields initialization and properly implement the Optional interface for retrieving port offset
    • Moved the logic/implementation of OFBiz legacy authentication tokens from the LoginWorker class to a new class named ExternalLoginKeysManager. Improved Javadocs in the new class.
    • Demo data for serialized and non-serialized product (OFBIZ-7766)
    • Added a PriCat component under specialpurpose (OFBIZ-9123)
    • A set of unit tests for the ExternalLoginKeysManager.getExternalLoginKey(...) method. Minor refactoring of the getExternalLoginKey(...) method to make it more friendly to unit tests.
    • Minor changes to make the method easier to test with unit tests.
    • Add a isValid() method to the ModelService class (OFBIZ-9158)
    • Add the entity-auto CRUD services for
    • Upgrade gradle to version 3.2.1 (OFBIZ-9160)
    • Provided clearer documentation for the eclipse task in Gradle
    • Removed unused runtime libraries in build.gradle
    • Replace leftshift operators with doLast clojures in build.gradle (OFBIZ-9160)
    • Provided an updated script for gradle bash-completion in README.md
    • Update location of view handlers

    Bugfixes

    Functional and technical bugfixes:
    • Added missing code to get the ItemIssuance in setInvoicesToReadyFromShipment service. This bug was introduced during the delegator to EntityQuery convertion. Also added complete code to check null shipment on setInvoicesToReadyFromShipment, code was incompletely implemented.
    • Corrected typo which caused calcTaxForDisplay service call to fail (problem with Ecommerce frontend when using showPricesWithVatTax)
    • Form macros with incorrect arguments.
    • A series of wrong argument names in Javadoc comments.
    • Incorrect @see reference to method in Javadoc.
    • Removed empty file (invalid class), a leftover of the commit that removed Cobertura some time ago.
    • Removed a redundant null check and parenthesis.
    • Error occurred when making shopping list public/private from Party Detail screen. (OFBIZ-7683)
    • Fixed wrong package-names

    Wednesday December 07, 2016

    Apache OFBiz News - November 2016

    Apache OFBiz News November 2016

    Welcome to our regular monthly round-up of OFBiz news. This month we have news about the OFBiz track at Apachecon EU, a brainstorming session that will help give the project a strategy and the our latest version 16.11.01 is released.

    OFBiz @ Apachecon EU Seville

    Once again Apachecon EU featured an OFBiz track. Five talks were selected covering a range of topics including suggestions for improving the user interface and user experience, functional testing, data extraction and the new OFBiz plug in manager. The sessions and their attendance figures are listed below:
    • OFBiz +Modern UI (13)
    • Collaborative Approach to Automated UI Testing (16)
    • Introducing Plug In Manager (10)
    • Data Extraction: How to get your data out of OFBiz (10)
    • Screen Rendering in OFBiz (10)
    Slides from all the presentations are now available on the Wiki. All talks were also recorded and will soon be available on Feathercast.

    Apachecon is always a good place to meetup and as usual whenever our community get together we talk, so we held an informal brainstorming session and also a mini OFBiz hackathon.

    We also met up with Paul KIng from the Apache Groovy project who was presenting a couple of sessions. OFBiz is currently working on replacing our existing Minilang DSL with Groovy so these presentations could be very useful for the community. If you would like more information about the Groovy workffort for OFBiz then see the following page:

    Groovy for OFBiz Business Logic.

    This is a great example example of how being at Apachecon connects you with other projects.

    Current Project Discussions

    During Apachecon we held a brainstorming session where we all got together to come up with some potential ideas for improvements to take back to the mailing lists. A summary of the session can be found on the Wiki.

    The session resulted in three main discussion threads being raised on the mailing lists:
    • Defining an OFBiz Project Strategy
    • Improving the OFBiz User Interface
    • Organising OFBiz Events or Meetups
    All three discussions are now in progress and we encourage everyone from the community to participate. If you would like to contribute to the discussions, share ideas or give feedback on what has already been discussed then please see our development mailings lists.

    OFBiz 16.11.01 Released

    Last month we mentioned the preparations for our next release. During this month the vote was finalised and the 16.11.01 release was announced. This release consolidates all the hard work that the community has put in over the last year. The whole 16.11 series is dedicated to the memory of Adrian Crum who died earlier this year.

    The new release features Gradle as the new build system, extensive refactoring, and also inbuilt unit test and plug in manager system. The project will continue in its refactoring effort to clean up code and improve efficiency.

    New features and improvements

    Functional enhancements and improvements as well as updates of third party libraries and source code refactoring:

    Bugfixes

    Functional and technical bugfixes:
    • Page bottom navigation problem with grid and include-grid (OFBIZ-7648)
    • Catch GenericEntityException and GenericServiceException and other instead of Exception in Java classes. (OFBIZ-8909)(OFBIZ-8910)(OFBIZ-8911)(OFBIZ-8912)(OFBIZ-8913)(OFBIZ-8914)(OFBIZ-8915)(OFBIZ-8917)(OFBIZ-8918)(OFBIZ-8919)(OFBIZ-8920)(OFBIZ-8921)(OFBIZ-8922)
    • UI Label in file CommonErrorUiLabels.xml (OFBIZ-9046)
    • Use proper main-action for permission-service, it should be VIEW instead of READ.
    • Update Services that sets non-pk fields to null if not passed, if non-pks not passed than it should remain unupdated (OFBIZ-8722)
    • Incorrect required parameters set on following services, mark required parameters as option false as service in parameter. createWorkEffortKeywords, createWorkEffortQuote, createWorkEffortRequest, createWorkEffortRequestItem, createWorkEffortRequestItemAndRequestItem, createWorkEffortReview, createWorkRequirementFulfillment (OFBIZ-8602)(OFBIZ-8603)(OFBIZ-8604)(OFBIZ-8605)(OFBIZ-8620)(OFBIZ-8621)(OFBIZ-8622)
    • Set required parameter as option false at service definition level (OFBIZ-8358)
    • Entity Auto services set remaining fields to null when passed only required fields (OFBIZ-8723)
    • Fixed console warning introduced in revision#1768253 (OFBIZ-8358)
    • Reversed key and description of Type drop-down on Bom Simulation
    • Wrong termination of element "if-compare-field"
    • Search operation on 'AllExamplesWithDesiredCustomerFeaturesReport' entity causing exception (OFBIZ-8822) Steps to regenerate: 1. Go to Entity Data Maintenance in webtools 2. Search entity 'AllExamplesWithDesiredCustomerFeaturesReport'. Click and go to the overview page. 3. Click on the Search button.
    • Reversed key and description of Taxable Flag drop-down on Add a new invoice Item
    • Fixed incorrect closing of set-service-fields.
    • Removed extra greater than sign from if-compare-filed tag, found while reading console log.
    • Passes required parameter contactMechTypeId while calling createPartyContactMech form copyPartyContactMechs service. Also pass same parameter in testCreatePartyContactMech test case service.
    • Conveted createInvoiceContactMech service form entity-auto to simple method, there is an bug in EntityAutoEngine. It causing test case failure. This is an quick fix. EntityAuto bug reported under ticket id OFBIZ-9117
    • Wrong label definition from PartyUiLabels.xml. In PartyUiLabels.xml the PartyCountryMissing label has been deleted but is still in use in one file Fix: Use the CommonCountryMissing label from CommonUiLabels instead (OFBIZ-9120)
    • Lookup of initial account in new opportunity doesn't work (OFBIZ-8617)
    • Layered-modal hyperlink doesn't show style (OFBIZ-7323)
    • ConfigXMLReader doesn't verify if "transaction-timeout" is set before trying to unbox (OFBIZ-8342) site-conf.xsd doesn't define transaction-timeout as being mandatory but ConfigXMLReader treats it as one and in the absence of the attribute an exception is being thrown causing the application to break.
    • SimpleMethod: Problem with Variables in key-fields (OFBIZ-9126)
    • Errormessage is displayed twice in LoginEvents.java (OFBIZ-9125)

    Monday November 28, 2016

    [ANNOUNCE] Apache OFBiz 16.11.01 released

    The Apache OFBiz community is pleased to announce the new release "Apache OFBiz 16.11.01".

    Apache OFBiz® is an open source product for the automation of enterprise processes that includes framework components and business applications.

    http://ofbiz.apache.org/

    "Apache OFBiz 16.11.01" is the latest and greatest release of OFBiz. The highlights of this release include:

    • * Switch of the build system to Gradle
    • * Removal of all libraries from OFBiz
    • * Introduction of a plugin management system
    • * Introduction of a unit testing framework
    • * Conversion of all namespaces to org.apache.ofbiz
    • * Inclusion of all "specialpurpose" components
    • * Refactoring of source file layouts to be more compliant with project standards https://cwiki.apache.org/confluence/x/C4B2
    • * Simplification of the code base by leveraging various framework tools (e.g. "entity-auto" services)
    • * Numerous features, bug fixes and refactoring of the code base.

    For more details please refer to the release notes, http://ofbiz.apache.org/release-notes-16.11.01.html.
    All users of previous releases including:
    • * Apache OFBiz 13.07.*
    • * Apache OFBiz 12.04.*
    • * Apache OFBiz 11.04.*
    are encouraged to upgrade to this last version and to get in touch with the community (at user@ofbiz.apache.org) to provide feedback or to receive help in the upgrade.

    The release file can be downloaded following the instructions in the OFBiz download page:
    http://ofbiz.apache.org/download.html
    http://ofbiz.apache.org/download.html#vulnerabilities

    Special Dedication

    The 16.11 releases are all dedicated to the memory of OFBiz Committer and ex PMC member Adrian Crum. Adrian passed away on 1st January 2016 and his loss is strongly felt. He was a valued member of the OFBiz community and his legacy will live on in the OFBiz codebase and in the lives of everyone he touched.

    The OFBiz community.

    Calendar

    Search

    Hot Blogs (today's hits)

    Tag Cloud

    Categories

    Feeds

    Links

    Navigation