Forums

Home » Liferay Portal » English » 3. Development

Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
Joshua Preston
Add models to Liferay, Could not initialize class
October 3, 2008 11:12 AM
Answer

Joshua Preston

Rank: Junior Member

Posts: 32

Join Date: September 16, 2008

Recent Posts

Hello, greetings and welcome!

I am attempting to incorporate some domain/model objects into Liferay so that they are closely coupled with a new system I'm developing. I've followed several different Wiki articles on extending Liferay tables, building and setting up the EXT environment and deploying my ext-impl.jar/ext-service.jar files. So far, I've created a EXT/ext-impl/service.xml file (shown below) with our objects, relations, etc.; performed ant build-service; ant build-wsdd and ant deploy. Tracing the Liferay startup logs I can clearly see that the services for my objects are loaded, so I've edited EXT/ext-web/docroot/WEB-INF/server-config.wsdd adding the appropriate services for remote SOAP calls (which I wasn't exactly sure I was supposed to do in order to get remote interfaces).

Anyhow, my problem is that when I attempt to create any of my domain/model objects for population like:

1AttachmentType attachmentType = new AttachmentTypeImpl();


I receive the following error: javax.portlet.PortletException: Error occured during request processing: Could not initialize class com.ext.portlet.ijus.spidaadmin.model.impl.AttachmentTypeImpl. The full stack trace is below.

How am I supposed to create one of my domain/model objects? I thought it would be straight forward, however, I thought wrong.

  1[#|2008-10-01T15:40:01.437-0400|SEVERE|sun-appserver9.1|org.springframework.web.portlet.DispatcherPortlet|_ThreadID=16;_ThreadName=httpSSLWorkerThread-8080-2;_RequestID=0cbceaec-d2d1-4cf9-b354-f6cb95a5ed2c;|Could not complete request
  2javax.portlet.PortletException: Error occured during request processing: Could not initialize class com.ext.portlet.ijus.spidaadmin.model.impl.AttachmentTypeImpl
  3    at org.springframework.web.portlet.DispatcherPortlet.doRenderService(DispatcherPortlet.java:851)
  4    at org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:483)
  5    at org.springframework.web.portlet.FrameworkPortlet.doDispatch(FrameworkPortlet.java:453)
  6    at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
  7    at com.sun.portal.portletcontainer.appengine.filter.FilterChainImpl.doFilter(FilterChainImpl.java:121)
  8    at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:69)
  9    at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:96)
 10    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 11    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
 12    at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
 13    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
 14    at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:660)
 15    at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:578)
 16    at com.liferay.portlet.InvokerPortlet.invoke(InvokerPortlet.java:534)
 17    at com.liferay.portlet.InvokerPortlet.invokeRender(InvokerPortlet.java:605)
 18    at com.liferay.portlet.InvokerPortlet.render(InvokerPortlet.java:373)
 19    at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java from :1360)
 20    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
 21    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 22    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
 23    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
 24    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
 25    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 26    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
 27    at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
 28    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
 29    at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:660)
 30    at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:578)
 31    at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:2269)
 32    at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:749)
 33    at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:169)
 34    at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:104)
 35    at com.liferay.portlet.layoutconfiguration.util.velocity.PortletColumnLogic.processContent(PortletColumnLogic.java:134)
 36    at com.liferay.portlet.layoutconfiguration.util.velocity.TemplateProcessor.processColumn(TemplateProcessor.java:68)
 37    at sun.reflect.GeneratedMethodAccessor680.invoke(Unknown Source)
 38    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 39    at java.lang.reflect.Method.invoke(Method.java:597)
 40    at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:295)
 41    at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:245)
 42    at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:203)
 43    at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:294)
 44    at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:318)
 45    at org.apache.velocity.app.Velocity.evaluate(Velocity.java:322)
 46    at org.apache.velocity.app.Velocity.evaluate(Velocity.java:195)
 47    at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:249)
 48    at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:194)
 49    at org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(portlet_jsp.java from :804)
 50    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
 51    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 52    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
 53    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
 54    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
 55    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 56    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
 57    at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
 58    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
 59    at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:660)
 60    at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:578)
 61    at com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:273)
 62    at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:446)
 63    at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:188)
 64    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
 65    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
 66    at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:164)
 67    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
 68    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
 69    at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
 70    at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:444)
 71    at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:709)
 72    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 73    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
 74    at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:855)
 75    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
 76    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:542)
 77    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:474)
 78    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:366)
 79    at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:144)
 80    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
 81    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
 82    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
 83    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 84    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
 85    at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:117)
 86    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:71)
 87    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 88    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 89    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
 90    at com.liferay.portal.servlet.filters.compression.CompressionFilter.processFilter(CompressionFilter.java:141)
 91    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:71)
 92    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 93    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 94    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
 95    at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:282)
 96    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:71)
 97    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 98    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 99    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
100    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:74)
101    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
102    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
103    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
104    at com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter.processFilter(LayoutCacheFilter.java:422)
105    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:71)
106    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
107    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
108    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
109    at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:199)
110    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:71)
111    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
112    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
113    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
114    at com.liferay.portal.servlet.filters.sso.opensso.OpenSSOFilter.processFilter(OpenSSOFilter.java:73)
115    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:71)
116    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
117    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
118    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
119    at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:185)
120    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
121    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
122    at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:132)
123    at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:74)
124    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
125    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
126    at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
127    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
128    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
129    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
130    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
131    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
132    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
133    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
134    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
135    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
136    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
137    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
138    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
139    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
140    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
141    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
142    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
143    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
144    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
145    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
146    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
147    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
148    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
149    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
150    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
151    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
152    at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:380)
153    at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
154    at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
155Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.ext.portlet.ijus.spidaadmin.model.impl.AttachmentTypeImpl
156    at net.ijus.spidaadmin.attachmenttype.ViewEditController.formBackingObject(ViewEditController.java:66)
157    at org.springframework.web.portlet.mvc.AbstractFormController.getErrorsForNewForm(AbstractFormController.java:616)
158    at org.springframework.web.portlet.mvc.AbstractFormController.showNewForm(AbstractFormController.java:600)
159    at org.springframework.web.portlet.mvc.AbstractFormController.handleRenderRequestInternal(AbstractFormController.java:441)
160    at net.ijus.spidaadmin.attachmenttype.ViewEditController.handleRenderRequestInternal(ViewEditController.java:122)
161    at org.springframework.web.portlet.mvc.AbstractController.handleRenderRequest(AbstractController.java:219)
162    at org.springframework.web.portlet.mvc.SimpleControllerHandlerAdapter.handleRender(SimpleControllerHandlerAdapter.java:52)
163    at org.springframework.web.portlet.DispatcherPortlet.doRenderService(DispatcherPortlet.java:811)
164    ... 151 more
165|#]


Here is my EXT/ext-impl/service.xml
  1<?xml version="1.0"?>
  2<!DOCTYPE service-builder PUBLIC
  3    "-//Liferay//DTD Service Builder 5.1.0//EN"
  4    "http://www.liferay.com/dtd/liferay-service-builder_5_1_0.dtd">
  5<service-builder package-path="com.ext.portlet.ijus.spidaadmin">
  6    <author>jpreston</author>
  7    <namespace>SpidaAdmin</namespace>
  8    <entity name="AttachmentType"
  9        local-service="true"
 10        remote-service="true">
 11
 12        <!-- PK fields -->
 13        <column name="attachmentTypeId"
 14                    id-type="identity"
 15                    type="long" primary="true" />
 16
 17        <!-- Audit fields -->
 18        <column name="companyId" type="long" />
 19        <column name="organizationId" type="long" />
 20        <column name="userId" type="long" />
 21        <column name="userName" type="String" />
 22        <column name="createDate" type="Date" />
 23        <column name="modifiedDate" type="Date" />
 24               
 25            <!-- Other fields -->
 26        <column name="code" type="String" />
 27        <column name="description" type="String" />
 28       
 29        <!-- Relationships -->
 30        <column name="company" type="Collection"
 31            entity="com.liferay.portal.Company"
 32            mapping-key="companyId" />
 33        <column name="organization" type="Collection"
 34            entity="com.liferay.portal.Organization"
 35            mapping-key="organizationId" />
 36        <column name="user" type="Collection"
 37            entity="com.liferay.portal.User"
 38            mapping-key="userId" />
 39
 40        <!-- Order -->
 41        <order by="asc">
 42            <order-column name="code" case-sensitive="false" />
 43        </order>
 44
 45        <!-- Finder methods -->
 46        <finder name="CompanyId" return-type="Collection">
 47            <finder-column name="companyId" />
 48        </finder>
 49        <finder name="OrganizationId" return-type="Collection">
 50            <finder-column name="organizationId" />
 51        </finder>
 52        <finder name="UserId" return-type="Collection">
 53            <finder-column name="userId" />
 54        </finder>
 55        <finder name="C_O" return-type="Collection">
 56            <finder-column name="companyId" />
 57            <finder-column name="organizationId" />
 58        </finder>
 59        <finder name="C_O_U" return-type="Collection">
 60            <finder-column name="companyId" />
 61            <finder-column name="organizationId" />
 62            <finder-column name="userId" />
 63        </finder>
 64        <finder name="Code" return-type="Collection">
 65            <finder-column name="code" />
 66        </finder>
 67        <finder name="C_C" return-type="Collection">
 68            <finder-column name="companyId"/>
 69            <finder-column name="code" />
 70        </finder>
 71        <finder name="O_C" return-type="Collection">
 72            <finder-column name="organizationId"/>
 73            <finder-column name="code" />
 74        </finder>
 75        <finder name="C_O_C" return-type="Collection">
 76            <finder-column name="companyId"/>
 77            <finder-column name="organizationId"/>
 78            <finder-column name="code" />
 79        </finder>
 80       
 81        <!-- References -->
 82        <reference package-path="com.liferay.counter" entity="Counter" />
 83        <reference package-path="com.liferay.portal" entity="Company"/>
 84        <reference package-path="com.liferay.portal" entity="Organization"/>
 85        <reference package-path="com.liferay.portal" entity="User"/>
 86    </entity>
 87    <entity name="ChangeFlag" local-service="true" remote-service="true">
 88
 89        <!-- PK fields -->
 90        <column name="changeFlagId"
 91                    id-type="identity"
 92                    type="long" primary="true" />
 93
 94        <!-- Audit fields -->
 95        <column name="companyId" type="long" />
 96        <column name="organizationId" type="long" />
 97        <column name="userId" type="long" />
 98        <column name="userName" type="String" />
 99        <column name="createDate" type="Date" />
100        <column name="modifiedDate" type="Date" />
101               
102            <!-- Other fields -->
103        <column name="code" type="String" />
104        <column name="description" type="String" />
105       
106        <!-- Relationships -->
107        <column name="company" type="Collection"
108            entity="com.liferay.portal.Company"
109            mapping-key="companyId" />
110        <column name="organization" type="Collection"
111            entity="com.liferay.portal.Organization"
112            mapping-key="organizationId" />
113        <column name="user" type="Collection"
114            entity="com.liferay.portal.User"
115            mapping-key="userId" />
116       
117        <!-- Order -->
118        <order by="asc">
119            <order-column name="code" case-sensitive="false" />
120        </order>
121
122        <!-- Finder methods -->
123        <finder name="CompanyId" return-type="Collection">
124            <finder-column name="companyId" />
125        </finder>
126        <finder name="OrganizationId" return-type="Collection">
127            <finder-column name="organizationId" />
128        </finder>
129        <finder name="UserId" return-type="Collection">
130            <finder-column name="userId" />
131        </finder>
132        <finder name="C_O" return-type="Collection">
133            <finder-column name="companyId" />
134            <finder-column name="organizationId" />
135        </finder>
136        <finder name="C_O_U" return-type="Collection">
137            <finder-column name="companyId" />
138            <finder-column name="organizationId" />
139            <finder-column name="userId" />
140        </finder>
141        <finder name="Code" return-type="Collection">
142            <finder-column name="code" />
143        </finder>
144        <finder name="C_C" return-type="Collection">
145            <finder-column name="companyId"/>
146            <finder-column name="code" />
147        </finder>
148        <finder name="O_C" return-type="Collection">
149            <finder-column name="organizationId"/>
150            <finder-column name="code" />
151        </finder>
152        <finder name="C_O_C" return-type="Collection">
153            <finder-column name="companyId"/>
154            <finder-column name="organizationId"/>
155            <finder-column name="code" />
156        </finder>
157       
158        <!-- References -->
159        <reference package-path="com.liferay.counter" entity="Counter" />
160        <reference package-path="com.liferay.portal" entity="Company"/>
161        <reference package-path="com.liferay.portal" entity="Organization"/>
162        <reference package-path="com.liferay.portal" entity="User"/>
163    </entity>
164    <entity name="JobType" local-service="true" remote-service="true">
165
166        <!-- PK fields -->
167        <column name="jobTypeId"
168                    id-type="identity"
169                    type="long" primary="true" />
170
171        <!-- Audit fields -->
172        <column name="companyId" type="long" />
173        <column name="organizationId" type="long" />
174        <column name="userId" type="long" />
175        <column name="userName" type="String" />
176        <column name="createDate" type="Date" />
177        <column name="modifiedDate" type="Date" />
178               
179            <!-- Other fields -->
180        <column name="code" type="String" />
181        <column name="description" type="String" />
182       
183        <!-- Relationships -->
184        <column name="company" type="Collection"
185            entity="com.liferay.portal.Company"
186            mapping-key="companyId" />
187        <column name="organization" type="Collection"
188            entity="com.liferay.portal.Organization"
189            mapping-key="organizationId" />
190        <column name="user" type="Collection"
191            entity="com.liferay.portal.User"
192            mapping-key="userId" />
193
194        <!-- Order -->
195        <order by="asc">
196            <order-column name="code" case-sensitive="false" />
197        </order>
198
199        <!-- Finder methods -->
200        <finder name="CompanyId" return-type="Collection">
201            <finder-column name="companyId" />
202        </finder>
203        <finder name="OrganizationId" return-type="Collection">
204            <finder-column name="organizationId" />
205        </finder>
206        <finder name="UserId" return-type="Collection">
207            <finder-column name="userId" />
208        </finder>
209        <finder name="C_O" return-type="Collection">
210            <finder-column name="companyId" />
211            <finder-column name="organizationId" />
212        </finder>
213        <finder name="C_O_U" return-type="Collection">
214            <finder-column name="companyId" />
215            <finder-column name="organizationId" />
216            <finder-column name="userId" />
217        </finder>
218        <finder name="Code" return-type="Collection">
219            <finder-column name="code" />
220        </finder>
221        <finder name="C_C" return-type="Collection">
222            <finder-column name="companyId"/>
223            <finder-column name="code" />
224        </finder>
225        <finder name="O_C" return-type="Collection">
226            <finder-column name="organizationId"/>
227            <finder-column name="code" />
228        </finder>
229        <finder name="C_O_C" return-type="Collection">
230            <finder-column name="companyId"/>
231            <finder-column name="organizationId"/>
232            <finder-column name="code" />
233        </finder>
234       
235        <!-- References -->
236        <reference package-path="com.liferay.counter" entity="Counter" />
237        <reference package-path="com.liferay.portal" entity="Company"/>
238        <reference package-path="com.liferay.portal" entity="Organization"/>
239        <reference package-path="com.liferay.portal" entity="User"/>
240    </entity>
241    <entity name="RemediationType" local-service="true" remote-service="true">
242
243        <!-- PK fields -->
244        <column name="remediationTypeId"
245                    id-type="identity"
246                    type="long" primary="true" />
247
248        <!-- Audit fields -->
249        <column name="companyId" type="long" />
250        <column name="organizationId" type="long" />
251        <column name="userId" type="long" />
252        <column name="userName" type="String" />
253        <column name="createDate" type="Date" />
254        <column name="modifiedDate" type="Date" />
255               
256            <!-- Other fields -->
257        <column name="code" type="String" />
258        <column name="description" type="String" />
259       
260        <!-- Relationships -->
261        <column name="company" type="Collection"
262            entity="com.liferay.portal.Company"
263            mapping-key="companyId" />
264        <column name="organization" type="Collection"
265            entity="com.liferay.portal.Organization"
266            mapping-key="organizationId" />
267        <column name="user" type="Collection"
268            entity="com.liferay.portal.User"
269            mapping-key="userId" />
270
271        <!-- Order -->
272        <order by="asc">
273            <order-column name="code" case-sensitive="false" />
274        </order>
275
276        <!-- Finder methods -->
277        <finder name="CompanyId" return-type="Collection">
278            <finder-column name="companyId" />
279        </finder>
280        <finder name="OrganizationId" return-type="Collection">
281            <finder-column name="organizationId" />
282        </finder>
283        <finder name="UserId" return-type="Collection">
284            <finder-column name="userId" />
285        </finder>
286        <finder name="C_O" return-type="Collection">
287            <finder-column name="companyId" />
288            <finder-column name="organizationId" />
289        </finder>
290        <finder name="C_O_U" return-type="Collection">
291            <finder-column name="companyId" />
292            <finder-column name="organizationId" />
293            <finder-column name="userId" />
294        </finder>
295        <finder name="Code" return-type="Collection">
296            <finder-column name="code" />
297        </finder>
298        <finder name="C_C" return-type="Collection">
299            <finder-column name="companyId"/>
300            <finder-column name="code" />
301        </finder>
302        <finder name="O_C" return-type="Collection">
303            <finder-column name="organizationId"/>
304            <finder-column name="code" />
305        </finder>
306        <finder name="C_O_C" return-type="Collection">
307            <finder-column name="companyId"/>
308            <finder-column name="organizationId"/>
309            <finder-column name="code" />
310        </finder>
311       
312        <!-- References -->
313        <reference package-path="com.liferay.counter" entity="Counter" />
314        <reference package-path="com.liferay.portal" entity="Company"/>
315        <reference package-path="com.liferay.portal" entity="Organization"/>
316        <reference package-path="com.liferay.portal" entity="User"/>
317    </entity>
318    <entity name="ProposalType" local-service="true" remote-service="true">
319
320        <!-- PK fields -->
321        <column name="proposalTypeId"
322                    id-type="identity"
323                    type="long" primary="true" />
324
325        <!-- Audit fields -->
326        <column name="companyId" type="long" />
327        <column name="organizationId" type="long" />
328        <column name="userId" type="long" />
329        <column name="userName" type="String" />
330        <column name="createDate" type="Date" />
331        <column name="modifiedDate" type="Date" />
332               
333            <!-- Other fields -->
334        <column name="code" type="String" />
335        <column name="description" type="String" />
336       
337        <!-- Relationships -->
338        <column name="company" type="Collection"
339            entity="com.liferay.portal.Company"
340            mapping-key="companyId" />
341        <column name="organization" type="Collection"
342            entity="com.liferay.portal.Organization"
343            mapping-key="organizationId" />
344        <column name="user" type="Collection"
345            entity="com.liferay.portal.User"
346            mapping-key="userId" />
347
348        <!-- Order -->
349        <order by="asc">
350            <order-column name="code" case-sensitive="false" />
351        </order>
352
353        <!-- Finder methods -->
354        <finder name="CompanyId" return-type="Collection">
355            <finder-column name="companyId" />
356        </finder>
357        <finder name="OrganizationId" return-type="Collection">
358            <finder-column name="organizationId" />
359        </finder>
360        <finder name="UserId" return-type="Collection">
361            <finder-column name="userId" />
362        </finder>
363        <finder name="C_O" return-type="Collection">
364            <finder-column name="companyId" />
365            <finder-column name="organizationId" />
366        </finder>
367        <finder name="C_O_U" return-type="Collection">
368            <finder-column name="companyId" />
369            <finder-column name="organizationId" />
370            <finder-column name="userId" />
371        </finder>
372        <finder name="Code" return-type="Collection">
373            <finder-column name="code" />
374        </finder>
375        <finder name="C_C" return-type="Collection">
376            <finder-column name="companyId"/>
377            <finder-column name="code" />
378        </finder>
379        <finder name="O_C" return-type="Collection">
380            <finder-column name="organizationId"/>
381            <finder-column name="code" />
382        </finder>
383        <finder name="C_O_C" return-type="Collection">
384            <finder-column name="companyId"/>
385            <finder-column name="organizationId"/>
386            <finder-column name="code" />
387        </finder>
388       
389        <!-- References -->
390        <reference package-path="com.liferay.counter" entity="Counter" />
391        <reference package-path="com.liferay.portal" entity="Company"/>
392        <reference package-path="com.liferay.portal" entity="Organization"/>
393        <reference package-path="com.liferay.portal" entity="User"/>
394    </entity>
395    <entity name="PositionCode" local-service="true" remote-service="true">
396
397        <!-- PK fields -->
398        <column name="positionCodeId"
399                    id-type="identity"
400                    type="long" primary="true" />
401
402        <!-- Audit fields -->
403        <column name="companyId" type="long" />
404        <column name="organizationId" type="long" />
405        <column name="userId" type="long" />
406        <column name="userName" type="String" />
407        <column name="createDate" type="Date" />
408        <column name="modifiedDate" type="Date" />
409               
410            <!-- Other fields -->
411        <column name="code" type="String" />
412        <column name="description" type="String" />
413        <column name="hourlyRate" type="float"/>
414       
415        <!-- Relationships -->
416        <column name="company" type="Collection"
417            entity="com.liferay.portal.Company"
418            mapping-key="companyId" />
419        <column name="organization" type="Collection"
420            entity="com.liferay.portal.Organization"
421            mapping-key="organizationId" />
422        <column name="user" type="Collection"
423            entity="com.liferay.portal.User"
424            mapping-key="userId" />
425       
426        <!-- Order -->
427        <order by="asc">
428            <order-column name="code" case-sensitive="false" />
429        </order>
430
431        <!-- Finder methods -->
432        <finder name="CompanyId" return-type="Collection">
433            <finder-column name="companyId" />
434        </finder>
435        <finder name="OrganizationId" return-type="Collection">
436            <finder-column name="organizationId" />
437        </finder>
438        <finder name="UserId" return-type="Collection">
439            <finder-column name="userId" />
440        </finder>
441        <finder name="C_O" return-type="Collection">
442            <finder-column name="companyId" />
443            <finder-column name="organizationId" />
444        </finder>
445        <finder name="C_O_U" return-type="Collection">
446            <finder-column name="companyId" />
447            <finder-column name="organizationId" />
448            <finder-column name="userId" />
449        </finder>
450        <finder name="Code" return-type="Collection">
451            <finder-column name="code" />
452        </finder>
453        <finder name="C_C" return-type="Collection">
454            <finder-column name="companyId"/>
455            <finder-column name="code" />
456        </finder>
457        <finder name="O_C" return-type="Collection">
458            <finder-column name="organizationId"/>
459            <finder-column name="code" />
460        </finder>
461        <finder name="C_O_C" return-type="Collection">
462            <finder-column name="companyId"/>
463            <finder-column name="organizationId"/>
464            <finder-column name="code" />
465        </finder>
466       
467        <!-- References -->
468        <reference package-path="com.liferay.counter" entity="Counter" />
469        <reference package-path="com.liferay.portal" entity="Company"/>
470        <reference package-path="com.liferay.portal" entity="Organization"/>
471        <reference package-path="com.liferay.portal" entity="User"/>
472    </entity>
473    <entity name="Proposal" local-service="true" remote-service="true">
474
475        <!-- PK fields -->
476        <column name="proposalId"
477                    id-type="identity"
478                    type="long" primary="true" />
479
480        <!-- Audit fields -->
481        <column name="companyId" type="long" />
482        <column name="organizationId" type="long" />
483        <column name="userId" type="long" />
484        <column name="userName" type="String" />
485        <column name="createDate" type="Date" />
486        <column name="modifiedDate" type="Date" />
487               
488            <!-- Other fields -->
489        <column name="internalProposalCode" type="String" />
490        <column name="clientProposalCode" type="String" />
491        <column name="proposeeProposalCode" type="String" />
492        <column name="workOrderNumber" type="String" />
493        <column name="poleQuantity" type="Integer" />
494        <column name="proposalTypeId" type="long" />
495        <column name="jobTypeId" type="long" />
496        <column name="clientRecievedDate" type="Date" />
497        <column name="openDate" type="Date" />
498        <column name="closeDate" type="Date" />
499        <column name="jobLocation" type="String" />
500        <column name="remarks" type="String" />
501       
502        <!-- Relationships -->
503        <column name="proposalType" type="Collection"
504            entity="ProposalType"
505            mapping-key="proposalTypeId" />
506        <column name="jobType" type="Collection"
507            entity="JobType"
508            mapping-key="jobTypeId" />
509
510        <column name="company" type="Collection"
511            entity="com.liferay.portal.Company"
512            mapping-key="companyId" />
513        <column name="organization" type="Collection"
514            entity="com.liferay.portal.Organization"
515            mapping-key="organizationId" />
516        <column name="user" type="Collection"
517            entity="com.liferay.portal.User"
518            mapping-key="userId" />
519
520        <!-- Order -->
521        <order by="asc">
522            <order-column name="internalProposalCode" case-sensitive="false" />
523        </order>
524
525        <!-- Finder methods -->
526        <finder name="CompanyId" return-type="Collection">
527            <finder-column name="companyId" />
528        </finder>
529        <finder name="OrganizationId" return-type="Collection">
530            <finder-column name="organizationId" />
531        </finder>
532        <finder name="UserId" return-type="Collection">
533            <finder-column name="userId" />
534        </finder>
535        <finder name="C_O" return-type="Collection">
536            <finder-column name="companyId" />
537            <finder-column name="organizationId" />
538        </finder>
539        <finder name="C_O_U" return-type="Collection">
540            <finder-column name="companyId" />
541            <finder-column name="organizationId" />
542            <finder-column name="userId" />
543        </finder>
544        <finder name="InternalProposalCode" return-type="Collection">
545            <finder-column name="internalProposalCode" />
546        </finder>
547        <finder name="C_I" return-type="Collection">
548            <finder-column name="companyId"/>
549            <finder-column name="internalProposalCode" />
550        </finder>
551        <finder name="O_I" return-type="Collection">
552            <finder-column name="organizationId"/>
553            <finder-column name="internalProposalCode" />
554        </finder>
555        <finder name="C_O_I" return-type="Collection">
556            <finder-column name="companyId"/>
557            <finder-column name="organizationId"/>
558            <finder-column name="internalProposalCode" />
559        </finder>
560        <finder name="clientProposalCode" return-type="Collection">
561            <finder-column name="clientProposalCode" />
562        </finder>
563        <finder name="C_C" return-type="Collection">
564            <finder-column name="companyId"/>
565            <finder-column name="clientProposalCode" />
566        </finder>
567        <finder name="O_C" return-type="Collection">
568            <finder-column name="organizationId"/>
569            <finder-column name="clientProposalCode" />
570        </finder>
571        <finder name="C_O_C" return-type="Collection">
572            <finder-column name="companyId"/>
573            <finder-column name="organizationId"/>
574            <finder-column name="clientProposalCode" />
575        </finder>
576        <finder name="ProposeeProposalCode" return-type="Collection">
577            <finder-column name="proposeeProposalCode" />
578        </finder>
579        <finder name="C_P" return-type="Collection">
580            <finder-column name="companyId"/>
581            <finder-column name="proposeeProposalCode" />
582        </finder>
583        <finder name="O_P" return-type="Collection">
584            <finder-column name="organizationId"/>
585            <finder-column name="proposeeProposalCode" />
586        </finder>
587        <finder name="C_O_P" return-type="Collection">
588            <finder-column name="companyId"/>
589            <finder-column name="organizationId"/>
590            <finder-column name="proposeeProposalCode" />
591        </finder>
592
593        <!-- References -->
594        <reference package-path="com.liferay.counter" entity="Counter" />
595        <reference package-path="com.liferay.portal" entity="Company"/>
596        <reference package-path="com.liferay.portal" entity="Organization"/>
597        <reference package-path="com.liferay.portal" entity="User"/>
598    </entity>
599    <entity name="ProposalDetail" local-service="true" remote-service="true">
600
601        <!-- PK fields -->
602        <column name="proposalDetailId"
603                    id-type="identity"
604                    type="long" primary="true" />
605
606        <!-- Audit fields -->
607        <column name="companyId" type="long" />
608        <column name="organizationId" type="long" />
609        <column name="userId" type="long" />
610        <column name="userName" type="String" />
611        <column name="createDate" type="Date" />
612        <column name="modifiedDate" type="Date" />
613               
614            <!-- Other fields -->
615        <column name="poleCode" type="String" />
616        <column name="proposalId" type="long" />
617        <column name="remediationTypeId" type="long"/>
618        <column name="attachmentTypeId" type="long"/>
619        <column name="poleLocation" type="String" />
620        <column name="latitude" type="String" />
621        <column name="longitude" type="Integer" />
622        <column name="altPole1" type="String" />
623        <column name="altPole2" type="String" />
624        <column name="changeFlagId" type="long" />
625        <column name="remarks" type="String" />
626        <column name="photo1" type="String" />
627        <column name="photo2" type="String" />
628        <column name="videoClip" type="String" />
629        <column name="transmission" type="boolean"/>
630        <column name="njuns" type="String"/>
631       
632        <!-- Relationships -->
633        <column name="proposal" type="Collection"
634            entity="Proposal"
635            mapping-key="proposalId" />
636        <column name="remediationType" type="Collection"
637            entity="RemediationType"
638            mapping-key="remediationTypeId" />
639        <column name="attachmentType" type="Collection"
640            entity="AttachmentType"
641            mapping-key="attachmentTypeId" />
642        <column name="changeFlag" type="Collection"
643            entity="ChangeFlag"
644            mapping-key="changeFlagId" />
645
646        <column name="company" type="Collection"
647            entity="com.liferay.portal.Company"
648            mapping-key="companyId" />
649        <column name="organization" type="Collection"
650            entity="com.liferay.portal.Organization"
651            mapping-key="organizationId" />
652        <column name="user" type="Collection"
653            entity="com.liferay.portal.User"
654            mapping-key="userId" />
655
656        <!-- Order -->
657        <order by="asc">
658            <order-column name="poleCode" case-sensitive="false" />
659        </order>
660
661        <!-- Finder methods -->
662        <finder name="CompanyId" return-type="Collection">
663            <finder-column name="companyId" />
664        </finder>
665        <finder name="OrganizationId" return-type="Collection">
666            <finder-column name="organizationId" />
667        </finder>
668        <finder name="UserId" return-type="Collection">
669            <finder-column name="userId" />
670        </finder>
671        <finder name="C_O" return-type="Collection">
672            <finder-column name="companyId" />
673            <finder-column name="organizationId" />
674        </finder>
675        <finder name="C_O_U" return-type="Collection">
676            <finder-column name="companyId" />
677            <finder-column name="organizationId" />
678            <finder-column name="userId" />
679        </finder>
680        <finder name="PoleCode" return-type="Collection">
681            <finder-column name="poleCode" />
682        </finder>
683        <finder name="C_C" return-type="Collection">
684            <finder-column name="companyId"/>
685            <finder-column name="poleCode" />
686        </finder>
687        <finder name="O_C" return-type="Collection">
688            <finder-column name="organizationId"/>
689            <finder-column name="poleCode" />
690        </finder>
691        <finder name="C_O_C" return-type="Collection">
692            <finder-column name="companyId"/>
693            <finder-column name="organizationId"/>
694            <finder-column name="poleCode" />
695        </finder>
696        <finder name="ProposalId" return-type="Collection">
697            <finder-column name="proposalId" />
698        </finder>
699        <finder name="C_P" return-type="Collection">
700            <finder-column name="companyId"/>
701            <finder-column name="proposalId" />
702        </finder>
703        <finder name="O_P" return-type="Collection">
704            <finder-column name="organizationId"/>
705            <finder-column name="proposalId" />
706        </finder>
707        <finder name="C_O_P" return-type="Collection">
708            <finder-column name="companyId"/>
709            <finder-column name="organizationId"/>
710            <finder-column name="proposalId" />
711        </finder>
712       
713        <!-- References -->
714        <reference package-path="com.liferay.counter" entity="Counter" />
715        <reference package-path="com.liferay.portal" entity="Company"/>
716        <reference package-path="com.liferay.portal" entity="Organization"/>
717        <reference package-path="com.liferay.portal" entity="User"/>
718    </entity>
719    <entity name="StatusCode" local-service="true" remote-service="true">
720
721        <!-- PK fields -->
722        <column name="statusCodeId"
723                    id-type="identity"
724                    type="long" primary="true" />
725
726        <!-- Audit fields -->
727        <column name="companyId" type="long" />
728        <column name="organizationId" type="long" />
729        <column name="userId" type="long" />
730        <column name="userName" type="String" />
731        <column name="createDate" type="Date" />
732        <column name="modifiedDate" type="Date" />
733               
734            <!-- Other fields -->
735        <column name="code" type="String" />
736        <column name="description" type="String" />
737       
738        <!-- Relationships -->
739        <column name="company" type="Collection"
740            entity="com.liferay.portal.Company"
741            mapping-key="companyId" />
742        <column name="organization" type="Collection"
743            entity="com.liferay.portal.Organization"
744            mapping-key="organizationId" />
745        <column name="user" type="Collection"
746            entity="com.liferay.portal.User"
747            mapping-key="userId" />
748
749        <!-- Order -->
750        <order by="asc">
751            <order-column name="code" case-sensitive="false" />
752        </order>
753
754        <!-- Finder methods -->
755        <finder name="CompanyId" return-type="Collection">
756            <finder-column name="companyId" />
757        </finder>
758        <finder name="OrganizationId" return-type="Collection">
759            <finder-column name="organizationId" />
760        </finder>
761        <finder name="UserId" return-type="Collection">
762            <finder-column name="userId" />
763        </finder>
764        <finder name="C_O" return-type="Collection">
765            <finder-column name="companyId" />
766            <finder-column name="organizationId" />
767        </finder>
768        <finder name="C_O_U" return-type="Collection">
769            <finder-column name="companyId" />
770            <finder-column name="organizationId" />
771            <finder-column name="userId" />
772        </finder>
773        <finder name="Code" return-type="Collection">
774            <finder-column name="code" />
775        </finder>
776        <finder name="C_C" return-type="Collection">
777            <finder-column name="companyId"/>
778            <finder-column name="code" />
779        </finder>
780        <finder name="O_C" return-type="Collection">
781            <finder-column name="organizationId"/>
782            <finder-column name="code" />
783        </finder>
784        <finder name="C_O_C" return-type="Collection">
785            <finder-column name="companyId"/>
786            <finder-column name="organizationId"/>
787            <finder-column name="code" />
788        </finder>
789       
790        <!-- References -->
791        <reference package-path="com.liferay.counter" entity="Counter" />
792        <reference package-path="com.liferay.portal" entity="Company"/>
793        <reference package-path="com.liferay.portal" entity="Organization"/>
794        <reference package-path="com.liferay.portal" entity="User"/>
795    </entity>
796    <entity name="StatusHistory" local-service="true" remote-service="true">
797
798        <!-- PK fields -->
799        <column name="statusHistoryId"
800                    id-type="identity"
801                    type="long" primary="true" />
802
803        <!-- Audit fields -->
804        <column name="companyId" type="long" />
805        <column name="organizationId" type="long" />
806        <column name="userId" type="long" />
807        <column name="userName" type="String" />
808        <column name="createDate" type="Date" />
809        <column name="modifiedDate" type="Date" />
810               
811            <!-- Other fields -->
812        <column name="statusCodeId" type="String" />
813        <column name="proposalId" type="long" />
814        <column name="statusDate" type="Date" />
815        <column name="remarks" type="String" />
816        <column name="assignedUserId" type="long" />
817       
818        <!-- Relationships -->
819        <column name="company" type="Collection"
820            entity="com.liferay.portal.Company"
821            mapping-key="companyId" />
822        <column name="organization" type="Collection"
823            entity="com.liferay.portal.Organization"
824            mapping-key="organizationId" />
825        <column name="user" type="Collection"
826            entity="com.liferay.portal.User"
827            mapping-key="userId" />
828
829        <column name="statusCode" type="Collection"
830            entity="StatusCode"
831            mapping-key="statusCodeId" />
832        <column name="proposal" type="Collection"
833            entity="Proposal"
834            mapping-key="proposalId" />
835
836        <!-- Order -->
837        <order by="asc">
838            <order-column name="statusDate" case-sensitive="false" />
839        </order>
840
841        <!-- Finder methods -->
842        <finder name="CompanyId" return-type="Collection">
843            <finder-column name="companyId" />
844        </finder>
845        <finder name="OrganizationId" return-type="Collection">
846            <finder-column name="organizationId" />
847        </finder>
848        <finder name="UserId" return-type="Collection">
849            <finder-column name="userId" />
850        </finder>
851        <finder name="C_O" return-type="Collection">
852            <finder-column name="companyId" />
853            <finder-column name="organizationId" />
854        </finder>
855        <finder name="C_O_U" return-type="Collection">
856            <finder-column name="companyId" />
857            <finder-column name="organizationId" />
858            <finder-column name="userId" />
859        </finder>
860        <finder name="StatusCodeId" return-type="Collection">
861            <finder-column name="statusCodeId"/>
862        </finder>
863        <finder name="C_S" return-type="Collection">
864            <finder-column name="companyId" />
865            <finder-column name="statusCodeId" />
866        </finder>
867        <finder name="O_S" return-type="Collection">
868            <finder-column name="organizationId" />
869            <finder-column name="statusCodeId" />
870        </finder>
871        <finder name="C_O_S" return-type="Collection">
872            <finder-column name="companyId" />
873            <finder-column name="organizationId" />
874            <finder-column name="statusCodeId" />
875        </finder>
876        <finder name="ProposalId" return-type="Collection">
877            <finder-column name="proposalId"/>
878        </finder>
879        <finder name="C_P" return-type="Collection">
880            <finder-column name="companyId" />
881            <finder-column name="proposalId" />
882        </finder>
883        <finder name="O_P" return-type="Collection">
884            <finder-column name="organizationId" />
885            <finder-column name="proposalId" />
886        </finder>
887        <finder name="C_O_P" return-type="Collection">
888            <finder-column name="companyId" />
889            <finder-column name="organizationId" />
890            <finder-column name="proposalId" />
891        </finder>
892       
893        <!-- References -->
894        <reference package-path="com.liferay.counter" entity="Counter" />
895        <reference package-path="com.liferay.portal" entity="Company"/>
896        <reference package-path="com.liferay.portal" entity="Organization"/>
897        <reference package-path="com.liferay.portal" entity="User"/>
898    </entity>
899
900</service-builder>


PS -- I'd like to say how impressed I am with the entire Liferay suite, everything seems to be very well done, kudos to all those core developers!!
Alex Wallace
RE: Add models to Liferay, Could not initialize class
October 3, 2008 11:50 AM
Answer

Alex Wallace

Rank: Liferay Master

Posts: 640

Join Date: November 4, 2007

Recent Posts

try something like:

1
2AttachmentType at = 1AttachmentTypeUtil.create(id);


hope this helps.
Joshua Preston
RE: Add models to Liferay, Could not initialize class
October 6, 2008 8:08 AM
Answer

Joshua Preston

Rank: Junior Member

Posts: 32

Join Date: September 16, 2008

Recent Posts

Alex,

Thanks for getting back to me! That works for now, however, when I am creating a new one and inserting it into the persistence context, if the ID is a long and is autogenerated, should I worry about setting the ID to a correct value? I'm just using a -1 for now, but I'm not sure if I should use a 0 or if there is a recommended way of doing things.

Also, do the DDL/SQL code for the new objects get generated at all? If so, where might they be found? I noticed there was a declaration in the *ModelImpl file, but wasn't sure if that was the winner or not.

Regards,

Joshua Preston.
Alex Wallace
RE: Add models to Liferay, Could not initialize class
October 6, 2008 9:16 AM
Answer

Alex Wallace

Rank: Liferay Master

Posts: 640

Join Date: November 4, 2007

Recent Posts

to get the next id for your object you use something like this:

1
2CounterLocalServiceUtil.increment(YourModel.class.getName());


That should take care of your concern...

Hope this helps!
Alex Wallace
RE: Add models to Liferay, Could not initialize class
October 6, 2008 9:19 AM
Answer

Alex Wallace

Rank: Liferay Master

Posts: 640

Join Date: November 4, 2007

Recent Posts

About the SQL code for entity insertion, I have not looked, but I would be pretty sure that, since the current Impl uses Hibernate for ORM, it is Hibernate that handles that....

The code to create the tables and indexes (based on your finders) is indeed generated for you in the sql folder of the ext environment, just grep for one of your table names if you ever need this
Joshua Preston
RE: Add models to Liferay, Could not initialize class
October 6, 2008 9:42 AM
Answer

Joshua Preston

Rank: Junior Member

Posts: 32

Join Date: September 16, 2008

Recent Posts

Alex,

I figured that the tables should have been created by hibernate, but they aren't. I think I'll need to peruse the portal.properties and override a setting or two in my portal-ext.properties file, I can vaguely remember seeing something equilivent to the generate hbm2ddl = create / update in there. Thanks for all your help!

Regards,

Joshua Preston.
Alex Wallace
RE: Add models to Liferay, Could not initialize class
October 6, 2008 9:52 AM
Answer

Alex Wallace

Rank: Liferay Master

Posts: 640

Join Date: November 4, 2007

Recent Posts

Oh, no, the table SQL is auto generated, but you have to excecute it yourself...

We've created a layer to run upgrade jobs with our SQL for this purpose.

Liferay uses upgrade jobs as well that change the schema and other things and registers this change in Release_ table.

You can always manually do it as well...
Joshua Preston
RE: Add models to Liferay, Could not initialize class
October 7, 2008 10:27 AM
Answer

Joshua Preston

Rank: Junior Member

Posts: 32

Join Date: September 16, 2008

Recent Posts

Alex,

Fantastic! I started playing around with the build files and think I've figured it out--although I can't say they are NetBeans friendly!

After I get a better grasp on what I'm doing, I'm going to edit the Wiki and see about changing it so that someone else trying to do this doesn't get all confused as I did. Until then, for reference, here are the steps I performed (and that are working so far):

 1cd $PORTAL_EXT
 2cd ext-impl
 3$EDITOR service.xml
 4ant build-service
 5ant build-wsdd
 6ant deploy
 7cd ..\sql
 8ant build-db
 9cd ..
10ant deploy


My SQL files were located in $PORTAL_EXT\sql\*.sql depending on what I was looking for ;-)
Simon Prinzleve
RE: Add models to Liferay, Could not initialize class
March 3, 2009 8:20 PM
Answer

Simon Prinzleve

Rank: Junior Member

Posts: 48

Join Date: December 2, 2007

Recent Posts

Hi Roberto,

I got the same problem with my Hibernate codings (which are based on that example emoticon ) after upgrading to 5.2.2

It seems hibernate refers to some jars for slf4j which are missing - detailed solution can be found here:
http://liferay-portlets.blogspot.com/2009/03/problem-could-not-initialize-class.html

Hope it helps,

Simon