BP_CONT_SEARCH/SearchHelp GET_I method for attribute VALUE1
Hi,
I searched the forum but I didn't find any thread about this.
I add the following code to the GET_I method of the attribute VALUE1.
METHOD get_i_value1.
DATA: lv_field TYPE string.
lv_field = me->get_field( attribute_path = space ).
IF lv_field = 'BP_NUMBER'.
rv_disabled = 'TRUE'.
ELSE.
rv_disabled = 'FALSE'.
ENDIF.
ENDMETHOD.
For some reason this method is never triggered.
I debugged the application and it is never called.
Where can I add the call to this method?
Thanx in advanced
I do not know if this is possible at all for advanced searches...
All the fielddata is supplied to the tag with the attribute fieldMetadata. The structure of this table has got no INPUTREADINESS.
cheers Carsten
Edited by: Carsten Kasper on Nov 12, 2008 6:15 PM
Similar Messages
-
Oracle.jbo.AttrValException: JBO-27019: Get method for attribute
Hi Guys,
I am trying to add a new column to Oracle quoting.It has already been customized by some consultant few years back. I followed the note 392728.1 on metalink and also have the documentation by the previous consultant but getting the error oracle.jbo.AttrValException: JBO-27019: Get method for attribute Draft in HeaderVO could not be resolved after adding my column, when I try to print the quote.
Here are the steps I took
1) added a column to the query (at the end) in HeaderVO.xml
2) added the below code in the HeaderVO.xml
<ViewAttribute
Name="DRAFT"
IsQueriable="false"
IsPersistent="false"
Precision="100"
Type="java.lang.String"
AliasName="DRAFT"
ColumnType="VARCHAR2"
Expression="DRAFT"
SQLType="VARCHAR" >
<DesignTime>
<Attr Name="_DisplaySize" Value="100" />
</DesignTime>
</ViewAttribute>
3). Modify HeaderVORowImpl.java file to add setters and getters for the newly added view attribute. For example,
a) case 67: //
setDRAFT((String)obj);
return;
b) case 67:
return getDRAFT();
c) ublic void setDRAFT(String s)
setAttributeInternal(67, s);
public String getDRAFT()
return (String)getAttributeInternal(67);
d) protected static final int DRAFT = 67;
Everything is dont exactly as per the manual but not sure why I am getting this issue. Any help will be appreciated.a) case 67: //
setDraft((String)obj);
return;
b) case 67:
return getDraft();
c)public void setDraft(String s){
setAttributeInternal(67, s);
public String getDraft(){
return (String)getAttributeInternal(67);
d) protected static final int DRAFT = 67;
can u change it as explained above.. setDRAFT should be setDraft.. and getDRAFT should be getDraft..
and make sure that the index.. number is exactly matching with the attribute order in the VO -
Unable to find setter method for attribute:
I am using Jboss jboss-4.2.3.GA, JDK 1.6.
I am trying to deploy our application on Jboss. When loading sources page or whenever we try to load the taglib we are getting the following error.
org.apache.jasper.JasperException: jspfile.jsp(67,1) Unable to find setter method for attribute: collection
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148)
at org.apache.jasper.compiler.Generator$GenerateVisitor.evaluateAttribute(Generator.java:2736)
at org.apache.jasper.compiler.Generator$GenerateVisitor.generateSetters(Generator.java:2965)
at org.apache.jasper.compiler.Generator$GenerateVisitor.generateCustomStart(Generator.java:2169)
at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1689)
at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338)
at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2388)
at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2394)
at org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2338)
at org.apache.jasper.compiler.Generator.generate(Generator.java:3374)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:210)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:316)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:336)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
at com.ssmb.common.servlets.GenericControllerServlet.service(GenericControllerServlet.java:639)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Thread.java:619)
The line corresponding in JSP file is ,
<ssmb:list name="src_" collection="sources" showAll='<%= "" + true %>'>
Please let me know if you have faced this issue before.Have you written this tag in a tld or a tag file?
How have you declared the attribute "collection"?
Does the class which implements the custom tag <ssmb:list> have a method in it: public void setCollection(String collection) ? -
Unable to find setter method for attribute: forceIdIndexFormula
When I try to use advanced dataTable tag and in particular the given property - I get the error.
What could it be?In older versions of my faces "forceIdIndexFormula" , is not defined. So it errors out when u try to use it, since it doesnt know what forceIdIndexFormula is all about.
When u try to assign a value to a attribute it will call its corresponding setter method. Since it is not found it errors out.
The solution is you have to make use of the latest myfaces version which supports the forceIdIndexFormula attribute in the datatable.
Thanks -
Custom Tag: Cannot find setter method for attribute
This has been working fine in appserver6.5.
In the jsp:
=======
<display:table configFileDir="theDirectory"...>
=======
The tld entry:
<tag>
<name>table</name>
<tagclass>org.apache.taglibs.display.TableTag</tagclass>
<teiclass>org.apache.taglibs.display.TableTagExtraInfo</teiclass>
<bodycontent>JSP</bodycontent>
<attribute>
<name>configFileDir</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
=============
In TableTag.java:
=============
private String configFileDir = null;
public void setConfigFileDir( String v )
v = v.trim();
this.configFileDir = v;
============
Help, I'm going nuts.Then you also need to create a UI element that extends HtmlPanelGrid
that has a tModelKey member and getters/setters. That object will hold
the information so that you can use it in your bean.Whoops... ignore that! Sorry. Attributes are simply stored in the component map component.getAttributes().
Add to your Tag class:
public void setProperties(UIComponent component) {
super.setProperties(component);
Tags.setString(component, "tModelKey", tModelKey);
public void release() {
// see above
}Where Tags.java is:public class Tags {
public static void setString(UIComponent component, String attributeName, String attributeValue) {
if (attributeValue != null) {
if (UIComponentTag.isValueReference(attributeValue)) {
setValueBinding(component, attributeName, attributeValue);
} else {
component.getAttributes().put(attributeName, attributeValue);
public static void setValueBinding(UIComponent component, String attributeName, String attributeValue) {
FacesContext context = FacesContext.getCurrentInstance();
Application app = context.getApplication();
ValueBinding vb = app.createValueBinding(attributeValue);
component.setValueBinding(attributeName, vb);
} -
Setter method for custom action attributes
Hello,
I'm using Sun App server. The container is saying I need to implement a setter method for a custom action attribute? I defined a set<variable() and this didn't fix the problem. What kind of setter method is it expecting?nevermind, found solution
-
Setting value for attribute 'PO_NUMBER_SOLD' using setter method
Hi Experts,
I need to set the value of a screen field according to some condition. I am using setter method of this attribute to set the value but it is not getting changed.
I have written following code in DO_PREPARE_OUTPUT method of implementation class ZL_ZZBT131I_ZCREDITCHECK_IMPL using setter method of attribute
Get Referral Authorization Code
lv_val1 = me->typed_context->crechkresph->get_po_number( attribute_path = 'PO_NUMBER' ).
me->typed_context->crechkresph->set_po_number( attribute_path = 'PO_NUMBER'
value = ' ' ).
while debugging I found that in method set_po_number set_property method has been used:--
current->set_property(
iv_attr_name = 'PO_NUMBER_SOLD' "#EC NOTEXT
iv_value = <nval> ).
In set_property method following code is getting executed
if ME->IS_CHANGEABLE( ) = ABAP_TRUE and
LV_PROPS_OBJ->GET_PROPERTY_BY_IDX( LV_IDX ) ne IF_GENIL_OBJ_ATTR_PROPERTIES=>READ_ONLY.
if <VALUE> ne IV_VALUE.
if ME->MY_MANAGER_ENTRY->DELTA_FLAG is initial.
first 'change' -> proof that entity is locked
if ME->MY_MANAGER_ENTRY->LOCKED = FALSE.
if ME->LOCK( ) = FALSE.
return.
endif.
endif.
flag entity as modified
ME->MY_MANAGER_ENTRY->DELTA_FLAG = IF_GENIL_CONTAINER_OBJECT=>DELTA_CHANGED.
endif.
ME->ACTIVATE_SENDING( ).
change value
<VALUE> = IV_VALUE.
log change
set bit LV_IDX of ME->CHANGE_LOG->* to INDICATOR_SET.
endif.
else.
check if it is a real read-only field or a display mode violation
assert id BOL_ASSERTS subkey 'READ-ONLY_VIOLATION'
fields ME->MY_INSTANCE_KEY->OBJECT_NAME
IV_ATTR_NAME
condition ME->CHANGEABLE = ABAP_TRUE.
endif.
and in debugging I found that if part ( ME->IS_CHANGEABLE( ) = ABAP_TRUE and
LV_PROPS_OBJ->GET_PROPERTY_BY_IDX( LV_IDX ) ne IF_GENIL_OBJ_ATTR_PROPERTIES=>READ_ONLY) fails and hence else part is getting executed and hence my field a real read-only field or a display mode violation is happening according to comments in code.
What shall I do so that I would be able to change the screen field value?
Any help would be highly appreciated.
Regards,
VimalHi,
Try this:
data: lr_entity type cl_crm_bol_entity.
lr_entity = me->typed_context->crechkresph->collection_wrapper->get_current( ).
lr_entity->set_property( iv_attr_name = 'PO_NUMBER' value = '').
Also, make sure the field is not read-only.
Regards
Prasenjit -
Default value for attribute "COUNTRY" in BP_HEAD_SEARCH/MainSearch
Hi Gurus,
Requirement is to set default value for attribute "COUNTRY" in BP_HEAD_SEARCH/MainSearch when user clicks on Corporate Account.
Below is code that i have written in DO_PREPARE_OUTPUT.
Code is working fine and in the debug also i can see the value of COUNTRY is set to DE, but it is not showing on the screen for first time but when i load component second time(Refresh the screen), it shows me value.
Any help would be appreciated. If somebody has otheralternative kindly share.
CALL METHOD super->do_prepare_output( iv_first_time = iv_first_time ).
Calling Super Method
CALL METHOD super->do_prepare_output
EXPORTING
iv_first_time = abap_true.
Data Declatation
DATA :lr_col TYPE REF TO if_bol_bo_col,
lr_current TYPE REF TO if_bol_bo_property_access,
lr_param TYPE REF TO if_bol_bo_property_access,
lr_qs TYPE REF TO cl_crm_bol_dquery_service,
lv_attr_name TYPE name_komp,
lv_sign TYPE bapisign,
lv_option TYPE bapioption,
w_country_exist TYPE c,
w_param TYPE string,
w_value TYPE string,
w_flag TYPE c.
Getting SEARCH Context Node
lr_qs ?= me->typed_context->search->collection_wrapper->get_current( ).
Get Selection Parameters
lr_col ?= lr_qs->get_selection_params( ).
Start from first parmaters
lr_current = lr_col->get_first( ).
Clearing Variables
CLEAR : w_country_exist, w_flag, w_param, w_value.
Loop till we have selection paramters
WHILE lr_current IS BOUND. " While loop 1
checking attribute name is COUNTRY then setting some variable
w_param = lr_current->get_property_as_string( 'ATTR_NAME' ).
CASE w_param.
WHEN 'COUNTRY'.
If country is filled then setting variable
w_value = lr_current->get_property_as_string( 'LOW' ).
IF w_value IS NOT INITIAL.
w_country_exist = abap_true.
ENDIF.
When we got COUNTRY attribute then setting flag
w_flag = abap_true.
ENDCASE.
Calling next parameter
lr_current = lr_col->get_next( ).
ENDWHILE. " While loop 1
In below block we are checking is COUNTRY attribute is blank and
we have found COUNTRY attribute in current selection paramters
IF lr_qs IS BOUND. " SEACRCH CONTEXT BOUND
If vairable is blank means DE or any other value is not filled in COUNTRY Attribute
IF w_country_exist IS INITIAL. " w_contry_exist
We have to add selection attribute if we come accross COUNTRY attribute during our search
IF w_flag EQ abap_true. " w_flag
Adding COUNTRY attribute with default value 'DE'
lr_qs->add_selection_param( EXPORTING iv_attr_name = 'COUNTRY'
iv_sign = 'I'
iv_option = 'EQ'
iv_low = 'DE' ).
ENDIF. " w_flag
ENDIF. " w_contry_exist
ENDIF. " SEACRCH CONTEXT BOUND
In below block we will remove COUNTRY attribute when it has blank value
IF lr_qs IS BOUND AND w_country_exist IS INITIAL.
lr_current = lr_col->get_first( ).
WHILE lr_current IS BOUND.
w_param = lr_current->get_property_as_string( 'ATTR_NAME' ).
CASE w_param.
WHEN 'COUNTRY'.
w_value = lr_current->get_property_as_string( 'LOW' ).
IF w_value IS INITIAL.
lr_col->remove( iv_bo = lr_current ).
ENDIF.
ENDCASE.
lr_current = lr_col->get_next( ).
ENDWHILE.
ENDIF.
Edited by: Harsharandeep Singh on Apr 28, 2011 3:44 PMHi,
Try it like this:
DATA:
lr_bo TYPE REF TO if_bol_bo_property_access ,
lv_attr_name TYPE name_komp.
FIELD-SYMBOLS:
<ls_param> TYPE crms_thtmlb_search_criterion.
READ TABLE parameters
ASSIGNING <ls_param>
WITH KEY field = 'COUNTRY'.
IF ( sy-subrc = 0 ).
<ls_param>-value1 = ip_pfct.
ENDIF.
CHECK ( me->parameter_collection IS NOT INITIAL ).
lr_bo = me->parameter_collection->get_first( ).
WHILE lr_bo IS BOUND.
CALL METHOD lr_bo->get_property_as_value
EXPORTING
iv_attr_name = 'ATTR_NAME'
IMPORTING
ev_result = lv_attr_name.
IF lv_attr_name EQ 'COUNTRY' .
CALL METHOD lr_bo->set_property
EXPORTING
iv_attr_name = 'LOW'
iv_value = 'DE'.
EXIT.
ELSE.
lr_bo = me->parameter_collection->get_next( ) .
ENDIF.
ENDWHILE .
Kind regards,
Micha -
I want the read the value of a field,'LCSTATUS' belonging to context node 'BTADMINH' in the GET_I method of the field, 'ZZFLD000008' belonging to context node,'ZBTACTIVITYH'.
In the context node class of context node 'ZBTACTIVITYH',I have created an instance attribute,GR_OWNER type ref to context class.
I get the following error in the line - lv_act_status = Lr_entity->if_bol_bo_property_access~GET_PROPERTY_AS_STRING( 'LCSTATUS' ).
'An exception (CX_CRM_CIC_PARAMETER_ERROR) occurred Message no. TPDA430'
I have used the below code.
method GET_I_ZZFLD000008.
DATA: current TYPE REF TO if_bol_bo_property_access,
lv_act_status TYPE string.
DATA:lr_entity TYPE REF TO cl_crm_bol_entity,
lr_current TYPE REF TO if_bol_bo_property_access,
lr_parent TYPE REF TO cl_crm_bol_entity.
rv_disabled = 'TRUE'.
if iterator is bound.
current = iterator->get_current( ).
else.
current = collection_wrapper->get_current( ).
endif.
CHECK gr_owner IS BOUND.
lr_entity ?= gr_owner->btadminh->collection_wrapper->get_current( ).
CHECK lr_entity IS BOUND.
lv_act_status = Lr_entity->if_bol_bo_property_access~GET_PROPERTY_AS_STRING( 'LCSTATUS' ). "error states that lcstatus can't be used here.
TRY.
IF current->is_property_readonly(
'ZZFLD000008' ) = abap_false. "#EC NOTEXT
rv_disabled = 'FALSE'.
ENDIF.
CATCH cx_sy_ref_is_initial cx_sy_move_cast_error
cx_crm_genil_model_error.
RETURN.
ENDTRY.
endmethod.Hi,
LCSTATUS is not an attribute of the BTADMINH structure. It is read using the relation to the status object
BTADMINH-> BTHeaderStatusSet-> BTStatusHCurrent-> ACT_STATUS.
Try reading the ACT_STATUS of object BTStatus as given below.
data: coll type ref to if_bol_entity_col.
data: entity type ref to cl_crm_bol_entity,
lv_act_status TYPE string.
entity ?= current. "BTADMINH entity.
coll = entity->get_related_entities(
iv_relation_name = 'BTHeaderStatusSet' ). "#EC NOTEXT
current = coll->get_current( ).
entity ?= current.
coll = entity->get_related_entities(
iv_relation_name = 'BTStatusHCurrent' ). "#EC NOTEXT
current = coll->get_current( ).
try.
lv_act_status = current->if_bol_bo_property_access~GET_PROPERTY_AS_STRING( 'ACT_STATUS' ).
catch cx_crm_cic_parameter_error.
endtry.
Regards JP -
How to change the score method for ses crawler table result?
Hi,all
There is a customer urgent requirement,they want customize methods to score the result which come from database same table different column source for relevancy boosting.For example.there is a table t_table which have 3 column:name,short description,long description.Now i create 3 source for this table,every source has different content column.source 1's content column is name,source 2's content column is short description,source 3's content column is long description,is it possible for me to define the priority for those 3 source.For example,source 1 's priority is 50%,source 2 's priority is 30%,source 3 's priority is 20%.
By the way,i wonder that exists a API to fetch the result set score attribute and primary key value?
any advice is appreciate.Kevin, have replied via internal mailing list on this. There is an undocumented method for boosting relevance by section. It is considered experimental at the moment and the exact details may change before we include it as a standard feature.
-
I'm implementing a query page as described in the HowTo ADF_ComplexMasterDetail.zip
When running the query page, I'm receiving the error:
javax.servlet.jsp.JspException: No getter method for property searchText of bean org.apache.struts.taglib.html.BEAN
I have my searchEmployees writen and 'exposed' (at least I can see it in the Data palette). But seems like something is missing, and can't find this searchText beam property specified in the html:text tag.
Can someone help in this one?
Here is the Help description inside the HowTo example:
Section 3
queryEmployees
queryEmployeesInDept provides an interface for entering a simple search criteria for querying a list of
employees. This does not use the Find mode Query By Example functionality that the other query screens
use, but rather presents a much simpler search interface. The actual search is carried out using a
function
searchEmployees that the underlying view object exposes. (See the EmployeesView view object in the
model project)
1. Drop a new Data Page onto the page flow diagram call it queryEmployees
2. In the page flow diagram, drag the searchEmployees operation from the AllEmployeesView
collection in the Data Control Palette and drop it on top of the new Data Page. This will cause the
framework to run a search whenever the page is called.
3. In the Structure pane, locate the queryEmployees node and expand it, select the child node
paramNames[0], and change it's value attribute to ${param.searchText}. This will pass the URL
parameter searchText on to the business method to qualify the query.
4. Drill down into the page and expand the Data Control Palette to select the AllEmployeesView
collection. Set the Drag and Drop as: list to Read-OnlyTable. Then drag the collection onto the page.
This will create a tabular containing the query results.
5. Select the Struts HTML component palette and drag a Form onto the page above the output table. Set
the handling action to this Data Page (queryEmployees.do)
6. Drag a text field from the component palette inside of this new form. Set the property attribute of
the
<html:text> tag to searchText (the same value you used in the paramNames[0] for the Data Page)
7. Create a new submit button in the form to submit the search. Set the property attribute of the button
to
event_search.
8. Finally we need to subclass the data page to prevent the search action from being fired when it is not
appropriate for the page ( for instance when we first display it). To do this we need to Go to Code on
the Data Page's context menu, and override the invokeCustomMethod() method:
* We only want to invoke the custom method i.e. the call to change
* the Where clause on the collection, if the Action has been called with
* a search event on the page with a search term supplied.
* If the user got here via a link or another event, we bypass the model call
* unless a URL parameter event=search is supplied, in which
* case the method will also be called.
protected void invokeCustomMethod(DataActionContext actionContext)
List events = actionContext.getEvents();
// If the event is "search" do the custom event call
if ((events != null) && (events.contains("search")))
String searchTerm = (String)((DynaActionForm)actionContext.getActionForm())
Get("searchText");
if (searchTerm != null)
super.invokeCustomMethod(actionContext);
}Solved with Oracle JDeveloper HowTo:
Creating Search Pages with Both Fixed and Dynamic Criteria
Author: Steve Muench, Oracle ADF Development Team
Date: September 16, 2004
http://www.oracle.com/technology/products/jdev/howtos/10g/dynamiccrit/index.html -
FindBy method for reference entities
hi,
I have created an entitity(Relation) which contains references of other 2 entities(address, person).I have created findBy methods(FindByCity,FindByLastName,etc) in Relation entity for attributes in those refernce entities(Address-city,state)(Person-First name, Last Name). but while i'am testing these functions it says :
<b>ERROR. setFilter column(25): Undefined expression 'personRef_var.refObject.name'</b>
I'am not able to decipher this error message. can anyone help me about what could possibly be wrong in the code generated. the following is the code containing this reference :-
if ("addressRef".equals(attrName))
if (subAttrName == null)
resQueryFilter.setCollectionType("com.sap.relation.besrv.relateaddperson.AddressRefVO");
resQueryFilter.setCollectionAttribute("addressRef");
resQueryFilter.setAttribute("addressRef_var.refObject.key");
else
strParamName = subAttrName;
dotIndex = strParamName.indexOf('.');
attrName = (dotIndex == -1) ? strParamName : strParamName.substring(0, dotIndex);
subAttrName = (dotIndex == -1) ? null : strParamName.substring(dotIndex + 1, strParamName.length());
resQueryFilter = new com.sap.caf.rt.bol.util.IntQueryFilter((com.sap.caf.rt.bol.util.QueryFilter) qf);
resQueryFilter.setAttribute("addressRef_var.refObject." + strParamName);
} else if ("personRef".equals(attrName))
if (subAttrName == null)
{ resQueryFilter.setCollectionType("com.sap.relation.besrv.relateaddperson.PersonRefVO");
resQueryFilter.setCollectionAttribute("personRef");
resQueryFilter.setAttribute("personRef_var.refObject.key");
else
strParamName = subAttrName;
dotIndex = strParamName.indexOf('.');
attrName = (dotIndex == -1) ? strParamName : strParamName.substring(0, dotIndex);
subAttrName = (dotIndex == -1) ? null : strParamName.substring(dotIndex + 1, strParamName.length());
resQueryFilter = new com.sap.caf.rt.bol.util.IntQueryFilter((com.sap.caf.rt.bol.util.QueryFilter) qf);
resQueryFilter.setAttribute("personRef_var.refObject." + strParamName);Hi Pamita,
Generation is errorneous for related entities which do not have relations at all. This problem emerges when you searching by some specific attribute of related entity.
The following workarounds:
1. Create a fake relation for Person and Address entities. For example you can create relation from Person to Person.
2. Change generation template. I don't remember template name - it should be like ServiceBean.
the following fix in generated coding should work:
<code>
if ("addressRef".equals(attrName))
if (subAttrName == null)
resQueryFilter.setCollectionType("com.sap.relation.besrv.relateaddperson.AddressRefVO");
resQueryFilter.setCollectionAttribute("addressRef");
resQueryFilter.setAttribute("addressRef_var.refObject.key");
else
strParamName = subAttrName;
dotIndex = strParamName.indexOf('.');
attrName = (dotIndex == -1) ? strParamName : strParamName.substring(0, dotIndex);
subAttrName = (dotIndex == -1) ? null : strParamName.substring(dotIndex + 1, strParamName.length());
resQueryFilter = new com.sap.caf.rt.bol.util.IntQueryFilter((com.sap.caf.rt.bol.util.QueryFilter) qf);
resQueryFilter.setCollectionType("com.sap.relation.besrv.relateaddperson.AddressRefVO");
resQueryFilter.setCollectionAttribute("addressRef");
resQueryFilter.setAttribute("addressRef_var.refObject." + strParamName);
} else if ("personRef".equals(attrName))
if (subAttrName == null)
{ resQueryFilter.setCollectionType("com.sap.relation.besrv.relateaddperson.PersonRefVO");
resQueryFilter.setCollectionAttribute("personRef");
resQueryFilter.setAttribute("personRef_var.refObject.key");
else
strParamName = subAttrName;
dotIndex = strParamName.indexOf('.');
attrName = (dotIndex == -1) ? strParamName : strParamName.substring(0, dotIndex);
subAttrName = (dotIndex == -1) ? null : strParamName.substring(dotIndex + 1, strParamName.length());
resQueryFilter = new com.sap.caf.rt.bol.util.IntQueryFilter((com.sap.caf.rt.bol.util.QueryFilter) qf);
{ resQueryFilter.setCollectionType("com.sap.relation.besrv.relateaddperson.PersonRefVO");
resQueryFilter.setCollectionAttribute("personRef");
resQueryFilter.setAttribute("personRef_var.refObject." + strParamName);
</code>
Be carefull while changing template because this generated piece of coding is used in many places.
Best regrads,
Aliaksei -
Best method for controlling Office 365 updates
Were looking for the best method for updating Office 365. We will be testing prior to releasing the version to the rest of the company. We have a couple of methods we're contemplating but looking for any pros or cons for each. We are also
using SCCM 2012.
1. Run setup.exe setting the version and internal install source in an .xml file run as an SCCM package using distribution points as the install source.
2. Run click2runclient.exe with command lines setting the version and internal install source as an SCCM package using distribution points as the install source.
3 Set the version through group policy and turn on automatic updates and don't specify an install source.
Option 3 appears to be the most straight forward with the least administrative overhead. Would it be possible to revert back to an earlier version using this method?
I have read various articles but looking for any input as to what is working well or not working for others.Hi,
I would like to share this
blog post with you, which provides an example how to implement a fully automated testing and deployment process of Office 365 updates. This deployment method provides you the ability to test updates before you approve them in my environment.
The process might look like:
Deploy Office 365 in your environment with Office Deployment Tool, configure the "Updates" element in the configuration.xml file so that updates are enabled and the "UpdatePath" attribute points to an internal source.
Download the latest Office 365 build into a different internal source, configure your test machine to pick up builds from it.
After testing the updates, copy the updates to the first internal source.
You should be able to integrate the process with SCCM to reduce your administrative effort.
Hope this helps.
Regards,
Ethan Hua
TechNet Community Support
It's recommended to download and install
Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
programs.
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact [email protected] -
URGENT HELP! - The prefix "xsi" for attribute "xsi:type" is not bound
Hi! i createD a WebService using the JWSDP 1.2. In the server-side i read a xml file, create another empty Document and using the importNode() method i populate the empty created doc. The problem is when i try to send client this created document. I'm using the DOMSource to send it to client side. Both client and WS method code are below! Does anyone know the answer??
And I'm getting this error:
[java] Endpoint address = http://localhost:8080/cm/ContextManager
[java] [Fatal Error] :2:42: The prefix "xsi" for attribute "xsi:type" is not bound.
[java] javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: The prefix "xsi" for attribute "xsi:type" is not bound.
[java] at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:469)
[java] at contextclient.CMClient.main(Unknown Source)
[java] Caused by: org.xml.sax.SAXParseException: The prefix "xsi" for attribute "xsi:type" is not bound.
[java] at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1139)
[java] at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:452)
[java] ... 1 more
[java] ---------
[java] org.xml.sax.SAXParseException: The prefix "xsi" for attribute "xsi:type" is not bound.
[java] at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1139)
[java] at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:452)
[java] at contextclient.CMClient.main(Unknown Source)
====================CLIENT CODE================================
Source getdevice = manager.getDevice("How");
DOMResult domResult = new DOMResult();
// getting a transformation factory instance
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.transform(getdevice, domResult);
Node node = domResult.getNode();
DOMSource domSRC = new DOMSource(node);
StreamResult streamResult = new StreamResult(System.out);
transformer.transform(domSRC, streamResult);
===============================================================
===================WebService Method CODE======================
public Source getDevice(String primaryContext)
Source src = null;
try
String uri = "C:\\foo\\DeviceInstance.xml";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
//create the first Document
Document doc1 = builder.parse(uri);
//create the second Document
Document doc2 = builder.newDocument();
//create the second doc's root element and append it
Element rootDoc2 = (Element)doc2.createElement("device");
doc2.appendChild(rootDoc2);
//get root of first document
Element rootDoc1 = doc1.getDocumentElement();
NodeList list = rootDoc1.getElementsByTagName(primaryContext);
for(int i = 0; i < list.getLength(); i++)
Element nodeToMove = (Element) list.item(i);
Node newNode = doc2.importNode(nodeToMove, true);
rootDoc2.appendChild(newNode);
src = new DOMSource(doc2);
catch(DOMException dome)
dome.printStackTrace();
catch(Exception e)
e.printStackTrace();
return src;
===============================================================
Does anyone know what could it be? Please, it's very urgent!
Tks in Advance,
Rodrigo.The xml i'm trying to send is below. It's important explain that in a standalone app it works perfectly. Unfortunately, when i perform the same actions in the WS world, it doesn't work. See, i tried to put the attributes inside the root element with the setAttributeNS() method but i got the same error again. How could i bound the attribute with no errors like that said before???
<?xml version="1.0" encoding="UTF-8"?>
<device xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="context.xsd">
<Identity xsi:type="fooType">
<Name>
<GivenName>Rodrigo</GivenName>
<FamilyName>Felicio</FamilyName>
</Name>
</Identity>
<Identity xsi:type="foowType">
<DeviceID>dev00345</DeviceID>
</Identity>
</device>
Regards,
Rodrigo. -
LSMW method for transaction ME31K ( Create contract)
can anybody tell me in which method of LSMW i should use to create contract ( Tcode- ME31K). Is there any direct input method for this or i have to use BAPI_CONTRACT_CREATE?
please answer it in details...
Thnxx in advance..In LSMW,
1st step Maintain Object Attributes. Here you can choose the kind of input method.
For your purpose you can choose Batch input recording and then go for Recording overview.
There you can do your recording for the tx.Similar to your BDC process.
Hope this helps to some extent!
Maybe you are looking for
-
Using slim and xfce4, something crashes on exit
I recently did a fresh install of Arch onto an older PC that I have. It's running a P4 3.06GHz, an nVidia GeForce FX 5900, and 1GB RAM. Because of the lower resources, I decided to use xfce4 and slim. I have a monitor and TV hooked up through s-video
-
I had to reactivate channels why, wifi or cable which is better
I had to reactivate some channels what would cause this and would it be better to use a Internet cable instead of wifi to stop buffering
-
After buying a second-hand laptop running Snow Leopard, I made mistake of upgrading software, creating mail accounts, Safari preferences, etc., before noticing that the account name was "user". I want to replace this Admin account with my own short
-
E-Recruitment - unable to send letters to applicant
Hi Gurus, I unable sent letters to applicant , "You have not assigned yourself to an email adress' error appears. Steps which I followed: 1) Created Job Requistion, posting and released it (job for internal applicant). 2) One employee applied for job
-
Error while saving dynamic hierarchy
Hi, I'm configuring consolidation on BPc NW 7.5. I get an error message while I try to save Dynamic Hierarchy. The error message says that : "Error running default logic ()". Pleaes note that I dont have anything in the default logic. Please help. Re