For years, ๐ฆ๐ฒ๐ฟ๐๐ถ๐ฐ๐ฒ ๐๐๐ถ๐น๐ฑ๐ฒ๐ฟ was considered the backbone of backend development in Liferay.
Need a custom entity?
Use Service Builder.
Need APIs?
Use Service Builder.
Need persistence, finder methods, services, indexing, permissions, workflows, or business logic?
Again, Service Builder.
It became the default engineering pattern for almost every serious Liferay implementation.
But the ecosystem has changed dramatically.
Today, when I look at modern Liferay architecture, I think a very important question needs to be asked:
โ Is Service Builder still the primary way to build backend systems in Liferay?
Honestly, for many use cases, the answer is no.
โโโโโโโโโโโโโโโโ
๐ง๐๐ ๐ฅ๐๐ฆ๐ ๐ข๐ ๐๐๐๐๐ฅ๐๐ฌ ๐ข๐๐๐๐๐ง๐ฆ
Liferay Objects changed the development experience completely.
Instead of writing large OSGi modules for every business requirement, teams can now create business-driven applications directly from the platform itself.
Objects already provide:
- Data modeling
- Relationships
- Permissions
- Workflows
- APIs
- Validation
- UI generation
- Headless access
- Low-code administration
This removes a huge amount of engineering overhead.
A business requirement that previously needed:
- Service Builder entities
- Local services
- Remote services
- REST builders
- JSPs or React UI
- Permission handling
- Workflow integration
โฆcan now sometimes be solved in hours using Objects.
That is a massive architectural shift.
โโโโโโโโโโโโโโโโ
๐ช๐๐ฌ ๐ฆ๐๐ฅ๐ฉ๐๐๐ ๐๐จ๐๐๐๐๐ฅ ๐๐ฆ ๐ก๐ข ๐๐ข๐ก๐๐๐ฅ ๐ง๐๐ ๐๐๐๐๐จ๐๐ง ๐๐ก๐ฆ๐ช๐๐ฅ
One of the biggest mistakes I still see is treating Service Builder as the starting point for every backend requirement.
That mindset made sense years ago.
But modern enterprise systems are evolving differently.
Todayโs architectures are increasingly based on:
- Microservices
- Headless APIs
- External platforms
- Event-driven systems
- Cloud-native deployments
- Frontend/backend separation
In this type of ecosystem, Liferay often acts more like:
- A digital experience layer
- A business orchestration layer
- A frontend aggregation platform
not necessarily the place where all backend logic must live.
And this is exactly where:
- ๐๐ถ๐ณ๐ฒ๐ฟ๐ฎ๐ ๐ข๐ฏ๐ท๐ฒ๐ฐ๐๐
- ๐๐น๐ถ๐ฒ๐ป๐ ๐๐
๐๐ฒ๐ป๐๐ถ๐ผ๐ป๐
- ๐๐
๐๐ฒ๐ฟ๐ป๐ฎ๐น ๐ฆ๐ฒ๐ฟ๐๐ถ๐ฐ๐ฒ๐
- ๐๐ฒ๐ฎ๐ฑ๐น๐ฒ๐๐ ๐ถ๐ป๐๐ฒ๐ด๐ฟ๐ฎ๐๐ถ๐ผ๐ป๐
start becoming much more powerful than traditional monolithic OSGi development.
โโโโโโโโโโโโโโโโ
๐ง๐๐ ๐ฃ๐ฅ๐ข๐๐๐๐ ๐ช๐๐ง๐ ๐ข๐ฉ๐๐ฅ๐จ๐ฆ๐๐ก๐ ๐ฆ๐๐ฅ๐ฉ๐๐๐ ๐๐จ๐๐๐๐๐ฅ
Service Builder is extremely powerful.
But power is not always the correct architectural choice.
Large Service Builder-heavy projects often create:
- Tight coupling with portal runtime
- Complex deployments
- OSGi dependency challenges
- Upgrade difficulties
- Slower development cycles
- Harder scalability patterns
- Platform lock-in
And honestly, many modern backend concerns are handled far better today using dedicated external services.
For example:
- High-volume processing
- AI integrations
- Payment orchestration
- Analytics engines
- External ERP synchronization
- Distributed workflows
- Event streaming
These workloads naturally fit microservice architectures more than portal-contained business logic.
โโโโโโโโโโโโโโโโ
๐ฆ๐ข ๐๐ฆ ๐ฆ๐๐ฅ๐ฉ๐๐๐ ๐๐จ๐๐๐๐๐ฅ ๐๐๐๐?
Not at all.
Service Builder still has very strong use cases.
It remains valuable when:
- Deep portal integration is required
- Internal Liferay persistence is necessary
- Tight coupling with platform services is beneficial
- Advanced indexing/custom search control is needed
- Existing enterprise implementations heavily depend on it
But I no longer see it as the โdefault architecture.โ
Thatโs the key difference.
โโโโโโโโโโโโโโโโ
๐ช๐๐๐ง ๐ ๐ข๐๐๐ฅ๐ก ๐๐๐๐๐ฅ๐๐ฌ ๐๐ฅ๐๐๐๐ง๐๐๐ง๐จ๐ฅ๐ ๐๐ข๐ข๐๐ฆ ๐๐๐๐
In my opinion, modern Liferay development is moving toward this combination:
- ๐๐ถ๐ณ๐ฒ๐ฟ๐ฎ๐ ๐ข๐ฏ๐ท๐ฒ๐ฐ๐๐ for business-driven configuration
- ๐๐น๐ถ๐ฒ๐ป๐ ๐๐
๐๐ฒ๐ป๐๐ถ๐ผ๐ป๐ for frontend/backend flexibility
- ๐๐ฒ๐ฎ๐ฑ๐น๐ฒ๐๐ ๐๐ฃ๐๐ for interoperability
- ๐๐
๐๐ฒ๐ฟ๐ป๐ฎ๐น ๐ ๐ถ๐ฐ๐ฟ๐ผ๐๐ฒ๐ฟ๐๐ถ๐ฐ๐ฒ๐ for scalable business logic
- ๐๐ถ๐ณ๐ฒ๐ฟ๐ฎ๐ ๐ฎ๐ ๐ฎ๐ป ๐ผ๐ฟ๐ฐ๐ต๐ฒ๐๐๐ฟ๐ฎ๐๐ถ๐ผ๐ป ๐ฎ๐ป๐ฑ ๐ฒ๐
๐ฝ๐ฒ๐ฟ๐ถ๐ฒ๐ป๐ฐ๐ฒ ๐ฝ๐น๐ฎ๐๐ณ๐ผ๐ฟ๐บ
This creates:
- Cleaner separation
- Faster delivery
- Independent deployments
- Better scalability
- Easier modernization
- Technology freedom
And honestly, this approach aligns much more closely with modern enterprise engineering principles.
โโโโโโโโโโโโโโโโ
๐๐๐ก๐๐ ๐ง๐๐ข๐จ๐๐๐ง๐ฆ
I donโt think the future is:
โ โObjects replacing Service Builder.โ
I think the future is:
โ โArchitectures becoming less portal-centric.โ
And in that world, Service Builder becomes one tool among many โ not the center of the entire backend strategy.
Thatโs the real shift happening in the Liferay ecosystem right now.


